This repository has been archived by the owner on Jul 8, 2024. It is now read-only.
-
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 #17 from floriaaan/dev
feat: complete back-end
- Loading branch information
Showing
1,039 changed files
with
156,108 additions
and
23 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,51 @@ | ||
name: Deploy Delivery Microservice CI/CD | ||
|
||
on: | ||
push: | ||
branches: [ dev, main ] | ||
|
||
permissions: | ||
id-token: write | ||
contents: read | ||
|
||
jobs: | ||
deploy: | ||
runs-on: ubuntu-latest | ||
environment: dev | ||
needs: [ build, test, publish ] | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@master | ||
- name: Install kubectl | ||
run: | | ||
sudo snap install kubectl --classic | ||
- name: 'Az CLI login' | ||
uses: azure/login@v1 | ||
with: | ||
client-id: ${{ secrets.AZURE_CLIENT_ID }} | ||
tenant-id: ${{ secrets.AZURE_TENANT_ID }} | ||
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }} | ||
- name: Set up Terraform | ||
uses: hashicorp/setup-terraform@v1 | ||
with: | ||
terraform_version: 1.0.5 | ||
- name: Terraform init | ||
run: | | ||
cd ./terraform && | ||
terraform init | ||
- name: Terraform apply | ||
run: | | ||
cd ./terraform && | ||
terraform apply -auto-approve | ||
- name: Terraform apply delivery | ||
run: | | ||
cd ../services/delivery/terraform && | ||
terraform apply -auto-approve | ||
- name: Configure kubectl | ||
run: | | ||
az aks get-credentials --resource-group rg-goodfood-dev --name aks-goodfood-dev | ||
- name: apply k8s manifests | ||
run: | | ||
cd .. && | ||
kubectl create namespace goodfood && | ||
kubectlcrete kubectl apply -f ./k8s |
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,82 @@ | ||
name: Delivery Microservice CI/CD | ||
|
||
on: | ||
push: | ||
branches: [delivery] | ||
pull_request: | ||
branches: [main] | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@master | ||
- uses: pnpm/action-setup@v2 | ||
with: | ||
version: latest | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: "18.x" | ||
cache: "pnpm" | ||
cache-dependency-path: services/delivery/pnpm-lock.yaml | ||
- name: Install dependencies | ||
run: | | ||
cd ./services/delivery | ||
pnpm install --frozen-lockfile | ||
- name: Build | ||
run: | | ||
cd ./services/delivery | ||
pnpm build | ||
test: | ||
runs-on: ubuntu-latest | ||
needs: build | ||
steps: | ||
- uses: actions/checkout@master | ||
- uses: pnpm/action-setup@v2 | ||
with: | ||
version: latest | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: "18.x" | ||
cache: "pnpm" | ||
cache-dependency-path: services/delivery/pnpm-lock.yaml | ||
- name: Install dependencies | ||
run: | | ||
cd ./services/delivery | ||
pnpm install --frozen-lockfile | ||
- name: Execute tests | ||
run: | | ||
cd ./services/delivery | ||
pnpm test | ||
sonarcloud: | ||
name: SonarCloud | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis | ||
- name: SonarCloud Scan | ||
uses: SonarSource/sonarcloud-github-action@master | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any | ||
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | ||
|
||
publish: | ||
runs-on: ubuntu-latest | ||
needs: [build, test] | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@master | ||
- name: Login to Docker Hub | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and push | ||
uses: docker/build-push-action@v4 | ||
with: | ||
context: ./services/ | ||
file: ./services/delivery/Dockerfile | ||
push: true | ||
tags: floriaaan/goodfood-delivery:latest |
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,87 @@ | ||
name: Gateway CI/CD | ||
|
||
on: | ||
push: | ||
branches: [gateway] | ||
pull_request: | ||
branches: [main] | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@master | ||
- uses: pnpm/action-setup@v2 | ||
with: | ||
version: latest | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: "18.x" | ||
cache: "pnpm" | ||
cache-dependency-path: services/gateway/pnpm-lock.yaml | ||
- name: Install dependencies | ||
run: | | ||
cd ./services/gateway | ||
pnpm install --frozen-lockfile | ||
- name: Build protos | ||
run: | | ||
cd ./services/gateway | ||
pnpm build:proto | ||
- name: Build | ||
run: | | ||
cd ./services/gateway | ||
pnpm build | ||
# test: | ||
# runs-on: ubuntu-latest | ||
# needs: build | ||
# steps: | ||
# - uses: actions/checkout@master | ||
# - uses: pnpm/action-setup@v2 | ||
# with: | ||
# version: latest | ||
# - uses: actions/setup-node@v3 | ||
# with: | ||
# node-version: "18.x" | ||
# cache: "pnpm" | ||
# cache-dependency-path: services/gateway/pnpm-lock.yaml | ||
# - name: Install dependencies | ||
# run: | | ||
# cd ./services/gateway | ||
# pnpm install --frozen-lockfile | ||
# - name: Execute tests | ||
# run: | | ||
# cd ./services/gateway | ||
# pnpm test | ||
|
||
sonarcloud: | ||
name: SonarCloud | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis | ||
- name: SonarCloud Scan | ||
uses: SonarSource/sonarcloud-github-action@master | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any | ||
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | ||
|
||
publish: | ||
runs-on: ubuntu-latest | ||
needs: [build] | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@master | ||
- name: Login to Docker Hub | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and push | ||
uses: docker/build-push-action@v4 | ||
with: | ||
context: ./services/ | ||
file: ./services/gateway/Dockerfile | ||
push: true | ||
tags: floriaaan/goodfood-gateway:latest |
15 changes: 10 additions & 5 deletions
15
.github/workflows/tests.yml → .github/workflows/global.yml
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
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: Log Microservice CI/CD | ||
|
||
on: | ||
push: | ||
branches: [log] | ||
pull_request: | ||
branches: [dev, main] | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@master | ||
- name: Install Go | ||
uses: actions/setup-go@v4 | ||
with: | ||
go-version: 1.20.3 | ||
|
||
- name: Build | ||
run: cd services/log && go build . | ||
|
||
test: | ||
runs-on: ubuntu-latest | ||
needs: build | ||
steps: | ||
- uses: actions/checkout@master | ||
- name: Install Go | ||
uses: actions/setup-go@v4 | ||
with: | ||
go-version: 1.20.3 | ||
|
||
- name: Execute tests | ||
run: cd services/log && go test -v . | ||
|
||
sonarcloud: | ||
name: SonarCloud | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis | ||
- name: SonarCloud Scan | ||
uses: SonarSource/sonarcloud-github-action@master | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any | ||
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | ||
|
||
publish: | ||
runs-on: ubuntu-latest | ||
needs: [build, test] | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@master | ||
- name: Login to Docker Hub | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and push | ||
uses: docker/build-push-action@v4 | ||
with: | ||
context: ./services/ | ||
file: ./services/log/Dockerfile | ||
push: true | ||
tags: floriaaan/goodfood-log:latest |
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,82 @@ | ||
name: Notification Microservice CI/CD | ||
|
||
on: | ||
push: | ||
branches: [ notification ] | ||
pull_request: | ||
branches: [ dev, main ] | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@master | ||
- uses: pnpm/action-setup@v2 | ||
with: | ||
version: latest | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: "18.x" | ||
cache: "pnpm" | ||
cache-dependency-path: services/notification/pnpm-lock.yaml | ||
- name: Install dependencies | ||
run: | | ||
cd ./services/notification | ||
pnpm install --frozen-lockfile | ||
- name: Build | ||
run: | | ||
cd ./services/notification | ||
pnpm build | ||
test: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@master | ||
- uses: pnpm/action-setup@v2 | ||
with: | ||
version: latest | ||
- uses: actions/setup-node@v3 | ||
with: | ||
node-version: "18.x" | ||
cache: "pnpm" | ||
cache-dependency-path: services/notification/pnpm-lock.yaml | ||
- name: Install dependencies | ||
run: | | ||
cd ./services/notification | ||
pnpm install --frozen-lockfile | ||
- name: Execute tests | ||
run: | | ||
cd ./services/notification | ||
pnpm test | ||
sonarcloud: | ||
name: SonarCloud | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
with: | ||
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis | ||
- name: SonarCloud Scan | ||
uses: SonarSource/sonarcloud-github-action@master | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any | ||
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | ||
|
||
publish: | ||
runs-on: ubuntu-latest | ||
needs: [ build, test ] | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@master | ||
- name: Login to Docker Hub | ||
uses: docker/login-action@v2 | ||
with: | ||
username: ${{ secrets.DOCKERHUB_USERNAME }} | ||
password: ${{ secrets.DOCKERHUB_TOKEN }} | ||
- name: Build and push | ||
uses: docker/build-push-action@v4 | ||
with: | ||
context: ./services/ | ||
file: ./services/notification/Dockerfile | ||
push: true | ||
tags: floriaaan/goodfood-notification:latest |
Oops, something went wrong.