diff --git a/.github/workflows/identity-api.yml b/.github/workflows/identity-api.yml index c68e37ce5..4ea78655a 100644 --- a/.github/workflows/identity-api.yml +++ b/.github/workflows/identity-api.yml @@ -5,75 +5,27 @@ on: branches: - develop paths: - - 'src/backend/services/order.api/**' - - '.github/workflows/identity-api.yml' + - "src/backend/services/identity-api/**" + - ".github/workflows/identity-api.yml" pull_request: branches: - develop paths: - - 'src/backend/services/identity.api/**' - - '.github/workflows/identity-api.yml' + - "src/backend/services/identity-api/**" + - ".github/workflows/identity-api.yml" jobs: - build-and-test: - name: build and test - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - with: - fetch-depth: '0' - - - name: Setup .NET Core SDK - uses: actions/setup-dotnet@v1 - with: - dotnet-version: 3.1.100 + build-release: + uses: ./.github/workflows/build-release.yml + with: + service-name: identity-api + secrets: inherit - - name: Setup cache - uses: actions/cache@v3 - with: - path: ~/.nuget/packages - key: ${{ runner.os }}-nuget-${{ hashFiles('**/Identity.API/packages.lock.json') }} - restore-keys: | - ${{ runner.os }}-nuget- - - - name: Build - run: | - chmod -R +x scripts/ - scripts/build.sh identity_api - working-directory: ./src/backend/ - - - name: Test & QA - run: | - chmod -R +x scripts/ - scripts/qa.sh identity_api - working-directory: ./src/backend/ - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Upload menu-api artifact - uses: actions/upload-artifact@v3 - with: - name: identity_api - path: ./src/backend/services/identity.api/identity-api-release - - docker-push: - needs: build-and-test - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v1 - - name: Download basket-api artifact - uses: actions/download-artifact@v1 - with: - name: identity_api - - name: Copy artifact to working directory - shell: bash - run: | - cp -r identity_api/ ./src/backend/services/identity.api/identity-api-release - - name: Publish docker image - uses: elgohr/Publish-Docker-Github-Action@master - with: - name: jurabek/menu - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} - dockerfile: release.Dockerfile - workdir: ./src/backend/services/identity.api \ No newline at end of file + deploy: + if: github.ref == 'refs/heads/develop' + needs: + - build-release + uses: ./.github/workflows/deploy.yml + with: + service-name: identity-api + version: ${{ needs.build-release.outputs.new-version }} diff --git a/k8s-kustomize/services/identity.api/base/.env.secret b/k8s-kustomize/services/identity-api/base/.env.secret similarity index 100% rename from k8s-kustomize/services/identity.api/base/.env.secret rename to k8s-kustomize/services/identity-api/base/.env.secret diff --git a/k8s-kustomize/services/identity.api/base/config.env b/k8s-kustomize/services/identity-api/base/config.env similarity index 100% rename from k8s-kustomize/services/identity.api/base/config.env rename to k8s-kustomize/services/identity-api/base/config.env diff --git a/k8s-kustomize/services/identity.api/base/deployment.yaml b/k8s-kustomize/services/identity-api/base/deployment.yaml similarity index 100% rename from k8s-kustomize/services/identity.api/base/deployment.yaml rename to k8s-kustomize/services/identity-api/base/deployment.yaml diff --git a/k8s-kustomize/services/identity.api/base/http-route.yaml b/k8s-kustomize/services/identity-api/base/http-route.yaml similarity index 100% rename from k8s-kustomize/services/identity.api/base/http-route.yaml rename to k8s-kustomize/services/identity-api/base/http-route.yaml diff --git a/k8s-kustomize/services/identity.api/base/identity-pgsql.yaml b/k8s-kustomize/services/identity-api/base/identity-pgsql.yaml similarity index 100% rename from k8s-kustomize/services/identity.api/base/identity-pgsql.yaml rename to k8s-kustomize/services/identity-api/base/identity-pgsql.yaml diff --git a/k8s-kustomize/services/identity.api/base/kustomization.yaml b/k8s-kustomize/services/identity-api/base/kustomization.yaml similarity index 100% rename from k8s-kustomize/services/identity.api/base/kustomization.yaml rename to k8s-kustomize/services/identity-api/base/kustomization.yaml diff --git a/k8s-kustomize/services/identity.api/base/service.yaml b/k8s-kustomize/services/identity-api/base/service.yaml similarity index 100% rename from k8s-kustomize/services/identity.api/base/service.yaml rename to k8s-kustomize/services/identity-api/base/service.yaml diff --git a/k8s-kustomize/services/identity.api/dev/config.env b/k8s-kustomize/services/identity-api/dev/config.env similarity index 100% rename from k8s-kustomize/services/identity.api/dev/config.env rename to k8s-kustomize/services/identity-api/dev/config.env diff --git a/k8s-kustomize/services/identity.api/dev/http_route_patch.yaml b/k8s-kustomize/services/identity-api/dev/http_route_patch.yaml similarity index 100% rename from k8s-kustomize/services/identity.api/dev/http_route_patch.yaml rename to k8s-kustomize/services/identity-api/dev/http_route_patch.yaml diff --git a/k8s-kustomize/services/identity.api/dev/kustomization.yaml b/k8s-kustomize/services/identity-api/dev/kustomization.yaml similarity index 100% rename from k8s-kustomize/services/identity.api/dev/kustomization.yaml rename to k8s-kustomize/services/identity-api/dev/kustomization.yaml diff --git a/src/backend/services/identity-api/Dockerfile b/src/backend/services/identity-api/Dockerfile index 49a219952..432da6bc1 100644 --- a/src/backend/services/identity-api/Dockerfile +++ b/src/backend/services/identity-api/Dockerfile @@ -2,12 +2,16 @@ FROM --platform=linux/arm64 mcr.microsoft.com/dotnet/core/sdk:3.1.426-buster-arm64v8 AS build WORKDIR /src COPY Identity.API/ ./api +COPY Identity.API.UnitTests ./tests RUN dotnet restore api/Identity.API.csproj +RUN dotnet restore tests/Identity.API.UnitTests.csproj COPY . . WORKDIR /src + +RUN dotnet test -t Identity.API.UnitTests/Identity.API.UnitTests.csproj RUN dotnet build api/Identity.API.csproj -c Release -o /app FROM build AS publish diff --git a/src/backend/services/identity-api/Dockerfile.test b/src/backend/services/identity-api/Dockerfile.test index 46558f2e4..7fa7cb149 100644 --- a/src/backend/services/identity-api/Dockerfile.test +++ b/src/backend/services/identity-api/Dockerfile.test @@ -1,5 +1,11 @@ -FROM mcr.microsoft.com/dotnet/core/sdk:3.1-alpine + +FROM --platform=linux/arm64 mcr.microsoft.com/dotnet/core/sdk:3.1.426-buster-arm64v8 AS build WORKDIR /src +COPY Identity.API.UnitTests ./tests + +RUN dotnet restore tests/Identity.API.UnitTests.csproj + COPY . . -ENTRYPOINT [ "/bin/sh" ] \ No newline at end of file +WORKDIR /src +RUN dotnet test -t Identity.API.UnitTests/Identity.API.UnitTests.csproj \ No newline at end of file