Workflow file for this run
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: Test and publish to package registries after new GitHub release | |
on: | |
release: | |
types: [published] | |
jobs: | |
init: | |
uses: ./.github/workflows/00-init.yml | |
get-playwright-version: | |
uses: ./.github/workflows/01-get-playwright-version.yml | |
needs: [init] | |
get-publish-version: | |
uses: ./.github/workflows/01-get-publish-version.yml | |
needs: [init] | |
lint: | |
uses: ./.github/workflows/01-lint.yml | |
needs: [init] | |
build-packages: | |
uses: ./.github/workflows/01-build-packages.yml | |
needs: [init] | |
init-playwright: | |
uses: ./.github/workflows/01-init-playwright.yml | |
needs: [get-playwright-version] | |
with: | |
version: ${{ needs.get-playwright-version.outputs.version }} | |
build-outputs: | |
uses: ./.github/workflows/01-build-outputs.yml | |
needs: [build-packages] | |
test-components: | |
uses: ./.github/workflows/02-e2e.yml | |
needs: [build-packages, get-playwright-version] | |
with: | |
version: ${{ needs.get-playwright-version.outputs.version }} | |
test-foundations: | |
uses: ./.github/workflows/02-e2e-foundations.yml | |
needs: [build-packages, get-playwright-version] | |
with: | |
version: ${{ needs.get-playwright-version.outputs.version }} | |
build-showcase-angular: | |
uses: ./.github/workflows/01-build-showcases.yml | |
needs: [build-packages] | |
with: | |
showcase: angular-showcase | |
build-showcase-angular-ssr: | |
uses: ./.github/workflows/01-build-showcases.yml | |
needs: [build-packages] | |
with: | |
showcase: angular-ssr-showcase | |
build-showcase-react: | |
uses: ./.github/workflows/01-build-showcases.yml | |
needs: [build-packages] | |
with: | |
showcase: react-showcase | |
build-showcase-next: | |
uses: ./.github/workflows/01-build-showcases.yml | |
needs: [build-packages] | |
with: | |
showcase: next-showcase | |
build-showcase-vue: | |
uses: ./.github/workflows/01-build-showcases.yml | |
needs: [build-packages] | |
with: | |
showcase: vue-showcase | |
build-showcase-nuxt: | |
uses: ./.github/workflows/01-build-showcases.yml | |
needs: [build-packages] | |
with: | |
showcase: nuxt-showcase | |
build-showcase-patternhub: | |
uses: ./.github/workflows/01-build-patternhub.yml | |
needs: [build-packages, get-publish-version] | |
with: | |
release: ${{ needs.get-publish-version.outputs.release }} | |
preRelease: ${{ needs.get-publish-version.outputs.preRelease }} | |
test-showcase-angular: | |
uses: ./.github/workflows/02-e2e-showcases.yml | |
needs: [build-showcase-angular, get-playwright-version] | |
with: | |
version: ${{ needs.get-playwright-version.outputs.version }} | |
showcase: angular-showcase | |
test-showcase-react: | |
uses: ./.github/workflows/02-e2e-showcases.yml | |
needs: [build-showcase-react, get-playwright-version] | |
with: | |
version: ${{ needs.get-playwright-version.outputs.version }} | |
showcase: react-showcase | |
test-showcase-vue: | |
uses: ./.github/workflows/02-e2e-showcases.yml | |
needs: [build-showcase-vue, get-playwright-version] | |
with: | |
version: ${{ needs.get-playwright-version.outputs.version }} | |
showcase: vue-showcase | |
test-showcase-patternhub: | |
uses: ./.github/workflows/02-e2e-showcases.yml | |
needs: [build-showcase-patternhub, get-playwright-version] | |
with: | |
version: ${{ needs.get-playwright-version.outputs.version }} | |
showcase: patternhub | |
test-screen-reader: | |
uses: ./.github/workflows/02-e2e-screen-reader.yml | |
needs: [build-showcase-react, init-playwright, get-playwright-version] | |
with: | |
version: ${{ needs.get-playwright-version.outputs.version }} | |
checks-done: | |
if: ${{ always() }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: 🎉 Checks done | |
run: | | |
resultBuildShowcaseAngular="${{ needs.build-showcase-angular.result }}" | |
resultBuildShowcaseAngularSSR="${{ needs.build-showcase-angular-ssr.result }}" | |
resultBuildShowcaseReact="${{ needs.build-showcase-react.result }}" | |
resultBuildShowcaseNext="${{ needs.build-showcase-next.result }}" | |
resultBuildShowcaseVue="${{ needs.build-showcase-vue.result }}" | |
resultBuildShowcaseNuxt="${{ needs.build-showcase-nuxt.result }}" | |
resultBuildShowcasePatternhub="${{ needs.build-showcase-patternhub.result }}" | |
resultBuildOutputs="${{ needs.build-outputs.result }}" | |
resultTestPackages="${{ needs.test-components.result }}" | |
resultTestFoundations="${{ needs.test-foundations.result }}" | |
resultTestShowcaseAngular="${{ needs.test-showcase-angular.result }}" | |
resultTestShowcaseReact="${{ needs.test-showcase-react.result }}" | |
resultTestShowcaseVue="${{ needs.test-showcase-vue.result }}" | |
resultTestShowcasePatternhub="${{ needs.test-showcase-patternhub.result }}" | |
resultTestScreenReader="${{ needs.test-screen-reader.result }}" | |
if [[ $resultTestFoundations == "success" ]] && \ | |
[[ $resultTestScreenReader == "success" ]] && \ | |
[[ $resultTestShowcaseAngular == "success" ]] && \ | |
[[ $resultTestShowcaseReact == "success" ]] && \ | |
[[ $resultTestShowcaseVue == "success" ]] && \ | |
[[ $resultTestShowcasePatternhub == "success" ]] && \ | |
[[ $resultTestPackages == "success" ]] && \ | |
[[ $resultBuildOutputs == "success" ]] && \ | |
[[ $resultBuildShowcaseAngular == "success" ]] && \ | |
[[ $resultBuildShowcaseAngularSSR == "success" ]] && \ | |
[[ $resultBuildShowcaseReact == "success" ]] && \ | |
[[ $resultBuildShowcaseNext == "success" ]] && \ | |
[[ $resultBuildShowcaseVue == "success" ]] && \ | |
[[ $resultBuildShowcaseNuxt == "success" ]] && \ | |
[[ $resultBuildShowcasePatternhub == "success" ]]; then | |
echo "🎉 All tests were successful." | |
exit 0 | |
else | |
echo "Some tests were failing." | |
exit 1 | |
fi | |
needs: | |
[ | |
build-showcase-angular, | |
build-showcase-angular-ssr, | |
build-showcase-react, | |
build-showcase-next, | |
build-showcase-vue, | |
build-showcase-nuxt, | |
build-showcase-patternhub, | |
build-outputs, | |
test-components, | |
test-showcase-angular, | |
test-showcase-react, | |
test-showcase-vue, | |
test-showcase-patternhub, | |
test-foundations, | |
test-screen-reader | |
] | |
deploy: | |
uses: ./.github/workflows/03-deploy-gh-pages.yml | |
needs: [checks-done, get-publish-version] | |
with: | |
release: ${{ needs.get-publish-version.outputs.release }} | |
preRelease: ${{ needs.get-publish-version.outputs.preRelease }} | |
publishpackages: | |
uses: ./.github/workflows/03-publish-packages.yml | |
needs: [get-publish-version, checks-done, build-outputs] | |
secrets: inherit | |
with: | |
release: ${{ needs.get-publish-version.outputs.release }} | |
preRelease: ${{ needs.get-publish-version.outputs.preRelease }} | |
version: ${{ needs.get-publish-version.outputs.version }} |