Merge pull request #1712 from vkubiv/feat-rp-did-wellknow-cors #1870
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
name: "sandbox ci" | |
env: | |
GO_VERSION: 1.19 | |
MINIKUBE_VERSION: v1.28.0 | |
KUBERNETES_VERSION: v1.25.8 | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
jobs: | |
SemanticPullRequest: | |
name: Semantic Pull Request Check | |
if: github.event_name == 'pull_request' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: amannn/action-semantic-pull-request@v5.1.0 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
Checks: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v3.3.0 | |
- name: Set up Go | |
uses: actions/setup-go@v3.5.0 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: Run checks | |
run: | | |
echo $PATH | |
go env | |
echo ${{ github.workspace }} | |
make checks | |
UnitTest: | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v3.3.0 | |
- name: Set up Go | |
uses: actions/setup-go@v3.5.0 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: Run unit test | |
run: make unit-test | |
- name: Upload coverage to Codecov | |
run: | | |
bash <(curl https://codecov.io/bash) | |
env: | |
CODECOV_UPLOAD_TOKEN: ${{ secrets.CODECOV_UPLOAD_TOKEN }} | |
Publish: | |
needs: [ Checks, UnitTest ] | |
if: github.event_name == 'push' && (github.repository == 'trustbloc/sandbox' && github.ref == 'refs/heads/main') | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v3.3.0 | |
- name: Set up Go | |
uses: actions/setup-go@v3.5.0 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- run: | | |
function logout { | |
docker logout | |
} | |
trap logout EXIT | |
git lfs install | |
git lfs pull | |
source ci/version_var.sh | |
echo $DOCKER_PASSWORD | docker login ghcr.io --username $DOCKER_USER --password-stdin | |
make sandbox-issuer-docker sandbox-rp-docker sandbox-ace-rp-docker login-consent-server-docker sandbox-cms-docker sandbox-cli-docker | |
docker tag ghcr.io/trustbloc/sandbox-issuer:latest ${ISSUER_REST_PKG}:${EDGE_SANDBOX_TAG} | |
docker push ${ISSUER_REST_PKG}:${EDGE_SANDBOX_TAG} | |
docker tag ghcr.io/trustbloc/sandbox-rp:latest ${RP_REST_PKG}:${EDGE_SANDBOX_TAG} | |
docker push ${RP_REST_PKG}:${EDGE_SANDBOX_TAG} | |
docker tag ghcr.io/trustbloc/sandbox-ace-rp:latest ${ACE_RP_REST_PKG}:${EDGE_SANDBOX_TAG} | |
docker push ${ACE_RP_REST_PKG}:${EDGE_SANDBOX_TAG} | |
docker tag ghcr.io/trustbloc/sandbox-login-consent-server:latest ${LOGIN_PKG}:${EDGE_SANDBOX_TAG} | |
docker push ${LOGIN_PKG}:${EDGE_SANDBOX_TAG} | |
docker tag ghcr.io/trustbloc/sandbox-cms:latest ${CMS_PKG}:${EDGE_SANDBOX_TAG} | |
docker push ${CMS_PKG}:${EDGE_SANDBOX_TAG} | |
docker tag ghcr.io/trustbloc/sandbox-cli:latest ${CLI_PKG}:${EDGE_SANDBOX_TAG} | |
docker push ${CLI_PKG}:${EDGE_SANDBOX_TAG} | |
env: | |
DOCKER_USER: ${{ secrets.CR_USER }} | |
DOCKER_PASSWORD: ${{ secrets.CR_PAT }} | |
DeployTest: | |
name: Deploy-Test | |
needs: [ Publish ] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3.3.0 | |
- name: Set up Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: Setup Minikube | |
uses: manusa/actions-setup-minikube@v2.7.2 | |
with: | |
minikube version: '${{ env.MINIKUBE_VERSION }}' | |
kubernetes version: '${{ env.KUBERNETES_VERSION }}' | |
start args: '--addons=ingress' | |
- name: Deploy Trustbloc | |
run: | | |
minikube ip | |
kubectl get nodes | |
source ci/version_var.sh | |
export ISSUER_IMG=${ISSUER_REST_PKG}:${EDGE_SANDBOX_TAG} | |
export RP_IMG=${RP_REST_PKG}:${EDGE_SANDBOX_TAG} | |
export ACE_RP_IMG=${ACE_RP_REST_PKG}:${EDGE_SANDBOX_TAG} | |
export LOGIN_CONSENT_IMG=${LOGIN_PKG}:${EDGE_SANDBOX_TAG} | |
export CMS_IMG=${CMS_PKG}:${EDGE_SANDBOX_TAG} | |
export CLI_IMG=${CLI_PKG}:${EDGE_SANDBOX_TAG} | |
echo $ISSUER_IMG $RP_IMG $ACE_RP_IMG $LOGIN_CONSENT_IMG $CMS_IMG $CLI_IMG | |
make ci-setup-deploy | |
- name: Run BDD test | |
run: | | |
make bdd-test | |
- name: Run UI-test | |
run: | | |
make automation-test-local | |
- name: Run VC Wallet Test | |
run: | | |
make automation-test-vcwallet | |
BuildDeployTest-PR: | |
name: Build-Deploy-Test-PR | |
needs: [ UnitTest ] | |
if: github.event_name == 'pull_request' && github.repository == 'trustbloc/sandbox' | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3.3.0 | |
- name: Set up Go | |
uses: actions/setup-go@v2 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: Build Sandbox components | |
run: | | |
make sandbox-issuer-docker sandbox-rp-docker sandbox-ace-rp-docker login-consent-server-docker sandbox-cms-docker sandbox-cli-docker | |
- name: Setup Minikube | |
uses: manusa/actions-setup-minikube@v2.7.2 | |
with: | |
minikube version: '${{ env.MINIKUBE_VERSION }}' | |
kubernetes version: '${{ env.KUBERNETES_VERSION }}' | |
start args: '--addons=ingress --memory=5g' | |
- name: Deploy Trustbloc | |
run: | | |
minikube ip | |
kubectl get nodes | |
export ISSUER_IMG=ghcr.io/trustbloc/sandbox-issuer:latest | |
export RP_IMG=ghcr.io/trustbloc/sandbox-rp:latest | |
export ACE_RP_IMG=ghcr.io/trustbloc/sandbox-ace-rp:latest | |
export LOGIN_CONSENT_IMG=ghcr.io/trustbloc/sandbox-login-consent-server:latest | |
export CMS_IMG=ghcr.io/trustbloc/sandbox-cms:latest | |
export CLI_IMG=ghcr.io/trustbloc/sandbox-cli:latest | |
echo $ISSUER_IMG $RP_IMG $ACE_RP_IMG $LOGIN_CONSENT_IMG $CMS_IMG $CLI_IMG | |
make ci-setup-deploy | |
- name: Run BDD test | |
run: | | |
make bdd-test | |
- name: Run VC Wallet Test | |
run: | | |
make automation-test-vcwallet | |
- name: Run UI-test | |
run: | | |
make automation-test-local | |