From eb418d0a452caf8b8a30316d5b80a2d6c932b014 Mon Sep 17 00:00:00 2001 From: Timo Date: Fri, 4 Aug 2023 18:33:39 +0200 Subject: [PATCH] chore: Parallel release action for components package --- .github/workflows/release.yml | 74 +++++++++++++++++++++++++++++++++-- 1 file changed, 70 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b5d8fa8c87..6ae7f8eb10 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -13,8 +13,74 @@ permissions: contents: read jobs: + unitTest: + name: Components unit tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Use Node.js 16 + uses: actions/setup-node@v3 + with: + node-version: 16 + - run: npm install --force + - run: npm run build + - run: npm run test:unit + + integTest: + name: Components integ tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Use Node.js 16 + uses: actions/setup-node@v3 + with: + node-version: 16 + - run: npm install --force + - run: npm run build + - run: npm run test:integ + + a11yTest: + name: Components a11y tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Use Node.js 16 + uses: actions/setup-node@v3 + with: + node-version: 16 + - run: npm install --force + - run: npm run build + - run: npm run test:a11y + release: - uses: cloudscape-design/.github/.github/workflows/release.yml@main - secrets: inherit - with: - publish-packages: lib/components,lib/design-tokens,lib/style-dictionary,lib/components-themeable,lib/dev-pages,lib/components-definitions + concurrency: release-${{ github.ref }} + runs-on: ubuntu-latest + needs: + - unitTest + - integTest + - a11yTest + steps: + - uses: actions/checkout@v3 + - name: Use Node.js 16 + uses: actions/setup-node@v3 + with: + node-version: 16 + - run: npm install --force + - run: npm run build + + - name: Configure AWS Credentials + uses: aws-actions/configure-aws-credentials@v2 + with: + role-to-assume: ${{ secrets.AWS_CODEARTIFACT_ROLE }} + aws-region: us-west-2 + - name: Login and configure codeartifact + env: + CODE_ARTIFACT_REPO: ${{ startsWith(github.ref_name, 'dev-v3-') && format('AwsUI-Artifacts-{0}', github.ref_name) || 'github-artifacts' }} + run: | + echo Logging into repository $CODE_ARTIFACT_REPO + aws codeartifact login --tool npm --repository $CODE_ARTIFACT_REPO --domain awsui --domain-owner ${{ secrets.AWS_ACCOUNT_ID }} --region us-west-2 --namespace @cloudscape-design + + - name: Release package to private CodeArtifact + uses: cloudscape-design/.github/.github/actions/release-package@main + with: + publish-packages: lib/components,lib/design-tokens,lib/style-dictionary,lib/components-themeable,lib/dev-pages,lib/components-definitions