Skip to content

Merge branch 'main' into staging #77

Merge branch 'main' into staging

Merge branch 'main' into staging #77

name: Publish @stagtion
on:
push:
branches:
- staging
jobs:
npm-publish-staging:
runs-on: ubuntu-22.04
environment: staging
steps:
- uses: actions/checkout@v3
- name: Use Node.js 16
uses: actions/setup-node@v3
with:
node-version: 16
registry-url: "https://registry.npmjs.org"
cache: yarn
- name: Initialize Project
run: |
yarn install
yarn build
env:
NODE_OPTIONS: "--max_old_space_size=4096"
YARN_ENABLE_IMMUTABLE_INSTALLS: "false"
- name: Update package.json dependencies and names
run: |
# Enable recursive globbing
shopt -s globstar
# Update package.json dependencies
sed -i -e 's/"@p0tion\/actions": "[^"]*"/"@stagtion\/actions": "latest"/g' ./packages/backend/package.json
sed -i -e 's/"@p0tion\/actions": "[^"]*"/"@stagtion\/actions": "latest"/g' ./packages/phase2cli/package.json
# Update package names
sed -i -e 's/"name": "@p0tion\/phase2cli"/"name": "@stagtion\/stagcli"/g' ./packages/phase2cli/package.json
sed -i -e 's/"name": "@p0tion\/backend"/"name": "@stagtion\/backend"/g' ./packages/backend/package.json
sed -i -e 's/"name": "@p0tion\/actions"/"name": "@stagtion\/actions"/g' ./packages/actions/package.json
# Update string literals in TypeScript and JS files
find packages -type f -name '*.ts' ! -path '*/node_modules/*' -exec sed -i 's|p0tion/actions|stagtion/actions|g' {} +
find packages -type f -name '*.js' ! -path '*/node_modules/*' -exec sed -i 's|p0tion/actions|stagtion/actions|g' {} +
- name: Install lerna
run: |
npm install -g lerna@7.1.4
- name: Publish packages
run: |
# Prevent `git commit error` when running `lerna version`
# It will not be pushed to GitHub. It is ephemeral
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git add .
git commit -m "chore: publish packages" --no-verify
echo "${{ vars.CLI_ENV_FILE }}" > ./packages/phase2cli/dist/.env
lerna version 0.0.0-$(git rev-parse --short HEAD~1) --no-push --ignore-scripts --message "chore(release): publish packages" --yes
lerna publish from-git --yes
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}