Merge pull request #2015 from Kajabi/develop #130
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: Publish | |
on: | |
workflow_call: | |
push: | |
branches: | |
- main | |
- develop | |
jobs: | |
lint-test-build: | |
uses: ./.github/workflows/lint-test-build.yml | |
publish: | |
needs: [lint-test-build] | |
runs-on: ubuntu-latest | |
steps: | |
# # Setup Auth token to push to github packages | |
- name: Set NPM Config | |
run: npm config set '//npm.pkg.github.com/:_authToken=${{ secrets.ACCESS_TOKEN }}' | |
- name: Add safe directory | |
run: git config --global --add safe.directory /__w/sage-lib/sage-lib | |
- name: Clone Sage-Lib Repo | |
uses: actions/checkout@v4 | |
with: | |
# pulls all commits (needed for lerna / semantic release to correctly version) | |
fetch-depth: "0" | |
# Setup Git Credentials to come from the Bot | |
- name: Set Bot Email | |
run: git config user.email "[email protected]" | |
- name: Set Bot Name | |
run: git config user.name "Kajabi Automation Bot" | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
with: | |
version: v0.9.1 | |
- name: Setup Ruby | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: '2.7.7' | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
registry-url: https://npm.pkg.github.com | |
- name: Yarn Install | |
run: yarn install --frozen-lockfile | |
- name: Build | |
run: NODE_OPTIONS=--openssl-legacy-provider yarn build | |
- name: Lerna Boostrap | |
run: yarn lerna bootstrap --ci | |
- name: Set PreId | |
id: set_preid | |
run: | | |
if [ "${{ github.ref }}" == "refs/heads/develop" ]; then | |
echo "preid='rc'" >> $GITHUB_OUTPUT | |
else | |
echo "preid=''" >> $GITHUB_OUTPUT | |
fi | |
- name: Lerna Version Develop | |
if: github.ref == 'refs/heads/develop' | |
run: NODE_OPTIONS=--openssl-legacy-provider yarn lerna publish --canary --yes --preid rc | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.ACCESS_TOKEN }} | |
- name: Lerna Publish | |
if: github.ref == 'refs/heads/main' | |
run: NODE_OPTIONS=--openssl-legacy-provider yarn lerna publish --registry github --yes | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.ACCESS_TOKEN }} | |
deploy: | |
needs: publish | |
if: github.ref == 'refs/heads/develop' | |
uses: ./.github/workflows/release-deploy.yml | |
secrets: inherit |