-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from edenlabllc/release/v0.1.0
#246 - init repo
- Loading branch information
Showing
4 changed files
with
170 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
name: Core CI/CD workflow | ||
|
||
on: | ||
push: | ||
# For GitFlow the following patterns are suggested: | ||
# - master | ||
# - develop | ||
# - feature/* | ||
# - release/* | ||
# - hotfix/* | ||
# | ||
# For an action with build_push_image=false the following patterns are suggested: | ||
# - master | ||
branches: | ||
- master | ||
|
||
env: | ||
# AWS region of the AWS account storing images in ECR. | ||
CORE_AWS_REGION: eu-north-1 | ||
# the latest action version | ||
ECR_BUILD_PUSH_ACTION_VERSION: v2 | ||
|
||
jobs: | ||
ecr-build-push: | ||
name: Checkout main and ecr-build-push action repositories, run ecr-build-push action | ||
if: ${{ !contains(github.event.head_commit.message, '[ci skip]') }} | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Checkout main repository | ||
uses: actions/checkout@v2 | ||
with: | ||
ref: ${{ github.ref }} | ||
fetch-depth: 0 | ||
|
||
- name: Checkout ecr-build-push action repository | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: edenlabllc/fhir.ecr_build_push.action | ||
ref: ${{ env.ECR_BUILD_PUSH_ACTION_VERSION }} | ||
token: ${{ secrets.GH_TOKEN_REPO_FULL_ACCESS }} | ||
path: .github/actions/ecr-build-push | ||
|
||
- name: Configure AWS credentials | ||
uses: aws-actions/configure-aws-credentials@v1 | ||
with: | ||
aws-region: ${{ env.CORE_AWS_REGION }} | ||
aws-access-key-id: ${{ secrets.CORE_AWS_ACCESS_KEY_ID }} | ||
aws-secret-access-key: ${{ secrets.CORE_AWS_SECRET_ACCESS_KEY }} | ||
|
||
- name: Login to AWS ECR | ||
uses: aws-actions/amazon-ecr-login@v1 | ||
|
||
- name: Pull ecr-build-push action image from AWS ECR | ||
run: | | ||
ECR_REGISTRY_URL="${{ secrets.CORE_AWS_ACCOUNT_ID }}.dkr.ecr.${{ env.CORE_AWS_REGION }}.amazonaws.com" | ||
IMAGE_NAME="core.fhir.ecr_build_push.action" | ||
IMAGE_FULL_NAME="${ECR_REGISTRY_URL}/${IMAGE_NAME}:${{ env.ECR_BUILD_PUSH_ACTION_VERSION }}" | ||
docker pull "${IMAGE_FULL_NAME}" | ||
docker tag "${IMAGE_FULL_NAME}" "${IMAGE_NAME}" | ||
- name: Run ecr-build-push action | ||
id: ecr-build-push | ||
uses: ./.github/actions/ecr-build-push | ||
with: | ||
build_push_image: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
.DS_Store | ||
.idea/ | ||
.vscode | ||
.env |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# These owners will be the default owners for everything in | ||
# the repo and will be requested for review when someone opens a pull request. | ||
* @anovikov-el @apanasiuk-el |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
# k3d configuration file, saved as e.g. /home/me/myk3dcluster.yaml | ||
apiVersion: k3d.io/v1alpha5 # this will change in the future as we make everything more stable | ||
kind: Simple # internally, we also have a Cluster config, which is not yet available externally | ||
metadata: | ||
# Don't overwrite section name. RMK set automatically. | ||
name: ${K3D_NAME} # name that you want to give to your cluster (will still be prefixed with `k3d-`) | ||
servers: 1 # same as `--servers 1` | ||
agents: 0 # same as `--agents 2` | ||
kubeAPI: # same as `--api-port myhost.my.domain:6445` (where the name would resolve to 127.0.0.1) | ||
# host: "myhost.my.domain" # important for the `server` setting in the kubeconfig | ||
hostIP: "0.0.0.0" # where the Kubernetes API will be listening on | ||
hostPort: "6445" # where the Kubernetes API listening port will be mapped to on your host system | ||
image: rancher/k3s:v1.27.9-k3s1 # same as `--image rancher/k3s:v1.23.8-k3s1` | ||
#network: my-custom-net # same as `--network my-custom-net` | ||
#subnet: "172.28.0.0/16" # same as `--subnet 172.28.0.0/16` | ||
#token: superSecretToken # same as `--token superSecretToken` | ||
volumes: # repeatable flags are represented as YAML lists | ||
# Don't overwrite the "volume" section. RMK configures it automatically. | ||
- volume: ${K3D_VOLUME_HOST_PATH}:/mnt/k3d/node # same as `--volume '/my/host/path:/path/in/node@server:0;agent:*'` | ||
nodeFilters: | ||
- all | ||
- volume: ${K3D_REGISTRY_HOST_PATH}:/etc/rancher/k3s # same as `--volume '/my/host/path:/path/in/node@server:0;agent:*'` | ||
nodeFilters: | ||
- all | ||
ports: | ||
- port: 8080:80 # same as `--port '8080:80@loadbalancer'` | ||
nodeFilters: | ||
- loadbalancer | ||
- port: 8443:443 # same as `--port '8080:80@loadbalancer'` | ||
nodeFilters: | ||
- loadbalancer | ||
#env: | ||
# - envVar: bar=baz # same as `--env 'bar=baz@server:0'` | ||
# nodeFilters: | ||
# - server:0 | ||
registries: # define how registries should be created or used | ||
create: # creates a default registry to be used with the cluster; same as `--registry-create registry.localhost` | ||
name: registry.localhost | ||
host: "0.0.0.0" | ||
hostPort: "5001" | ||
# proxy: # omit this to have a "normal" registry, set this to create a registry proxy (pull-through cache) | ||
# remoteURL: https://registry-1.docker.io # mirror the DockerHub registry | ||
# username: "" # unauthenticated | ||
# password: "" # unauthenticated | ||
# volumes: | ||
# - /some/path:/var/lib/registry # persist registry data locally | ||
# use: | ||
# - k3d-myotherregistry:5000 # some other k3d-managed registry; same as `--registry-use 'k3d-myotherregistry:5000'` | ||
# Don't overwrite the "config" section. RMK configures it automatically. | ||
config: | # define contents of the `registries.yaml` file (or reference a file); same as `--registry-config /path/to/config.yaml` | ||
mirrors: | ||
"288509344804.dkr.ecr.eu-north-1.amazonaws.com": | ||
endpoint: | ||
- https://288509344804.dkr.ecr.eu-north-1.amazonaws.com | ||
configs: | ||
288509344804.dkr.ecr.eu-north-1.amazonaws.com: | ||
auth: | ||
username: ${K3D_AWS_ECR_USER} | ||
password: ${K3D_AWS_ECR_PASSWORD} | ||
#hostAliases: # /etc/hosts style entries to be injected into /etc/hosts in the node containers and in the NodeHosts section in CoreDNS | ||
# - ip: 1.2.3.4 | ||
# hostnames: | ||
# - my.host.local | ||
# - that.other.local | ||
# - ip: 1.1.1.1 | ||
# hostnames: | ||
# - cloud.flare.dns | ||
options: | ||
k3d: # k3d runtime settings | ||
wait: true # wait for cluster to be usable before returining; same as `--wait` (default: true) | ||
timeout: "60s" # wait timeout before aborting; same as `--timeout 60s` | ||
disableLoadbalancer: false # same as `--no-lb` | ||
disableImageVolume: false # same as `--no-image-volume` | ||
disableRollback: false # same as `--no-Rollback` | ||
loadbalancer: | ||
configOverrides: | ||
- settings.workerConnections=2048 | ||
k3s: # options passed on to K3s itself | ||
extraArgs: # additional arguments passed to the `k3s server|agent` command; same as `--k3s-arg` | ||
- arg: --kubelet-arg=--sync-frequency=5s | ||
nodeFilters: | ||
- all | ||
- arg: --kubelet-arg=--file-check-frequency=5s | ||
nodeFilters: | ||
- all | ||
# nodeLabels: | ||
# - label: foo=bar # same as `--k3s-node-label 'foo=bar@agent:1'` -> this results in a Kubernetes node label | ||
# nodeFilters: | ||
# - agent:1 | ||
kubeconfig: | ||
updateDefaultKubeconfig: true # add new cluster to your default Kubeconfig; same as `--kubeconfig-update-default` (default: true) | ||
switchCurrentContext: true # also set current-context to the new cluster's context; same as `--kubeconfig-switch-context` (default: true) | ||
# runtime: # runtime (docker) specific options | ||
# gpuRequest: all # same as `--gpus all` | ||
# labels: | ||
# - label: bar=baz # same as `--runtime-label 'bar=baz@agent:1'` -> this results in a runtime (docker) container label | ||
# nodeFilters: | ||
# - agent:1 |