diff --git a/.github/workflows/release-automated.yml b/.github/workflows/release-automated.yml index 3f700893..8ae626bb 100644 --- a/.github/workflows/release-automated.yml +++ b/.github/workflows/release-automated.yml @@ -38,20 +38,14 @@ jobs: - name: Install dependencies run: npm ci - name: Run semantic-release for dart package - run: | - npx semantic-release || EXIT_CODE=$? - if [ ${EXIT_CODE:-0} -ne 0 ] && [ ${EXIT_CODE:-0} -ne 69 ]; then - exit $EXIT_CODE - fi + working-directory: packages/dart + run: npx semantic-release env: GITHUB_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }} PKG_NAME: dart - name: Run semantic-release for flutter package - run: | - npx semantic-release || EXIT_CODE=$? - if [ ${EXIT_CODE:-0} -ne 0 ] && [ ${EXIT_CODE:-0} -ne 69 ]; then - exit $EXIT_CODE - fi + working-directory: packages/flutter + run: npx semantic-release env: GITHUB_TOKEN: ${{ secrets.RELEASE_GITHUB_TOKEN }} PKG_NAME: flutter diff --git a/packages/dart/.releaserc.js b/packages/dart/.releaserc.js new file mode 100644 index 00000000..69c6ea3c --- /dev/null +++ b/packages/dart/.releaserc.js @@ -0,0 +1 @@ +module.exports = require('../../release.config.js'); diff --git a/packages/flutter/.releaserc.js b/packages/flutter/.releaserc.js new file mode 100644 index 00000000..69c6ea3c --- /dev/null +++ b/packages/flutter/.releaserc.js @@ -0,0 +1 @@ +module.exports = require('../../release.config.js'); diff --git a/release.config.js b/release.config.js index 973f7f54..acd28a8d 100644 --- a/release.config.js +++ b/release.config.js @@ -57,6 +57,7 @@ async function config() { ]; const config = { + extends: 'semantic-release-monorepo', branches: [ 'master', // { name: 'alpha', prerelease: true }, @@ -83,11 +84,6 @@ async function config() { noteKeywords: [ 'BREAKING CHANGE', 'BREAKING CHANGES', 'BREAKING' ], }, }], - ['@semantic-release/exec', { - verifyConditionsCmd: packageName !== 'root' - ? `bash -c 'LAST_TAG=$(git describe --tags --abbrev=0 --match="${packageName}-*" 2>/dev/null || echo ""); if [ -n "$LAST_TAG" ]; then git diff --name-only $LAST_TAG HEAD | grep -q "^packages/${packageName}/"; else git log --all --name-only --pretty=format: | grep -q "^packages/${packageName}/"; fi || (echo "No changes in packages/${packageName}, skipping release" && exit 69)'` - : 'echo "Root package always runs"', - }], ['@semantic-release/release-notes-generator', { preset: 'angular', parserOpts: {