Skip to content

Commit

Permalink
new workflow, try again
Browse files Browse the repository at this point in the history
  • Loading branch information
leo4life2 committed Aug 13, 2024
1 parent aba49b8 commit c4c6011
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 41 deletions.
86 changes: 46 additions & 40 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,16 @@ jobs:
node-version: '18'

- name: Install dependencies
run: |
npm install --include=dev
cd frontend
npm install --include=dev
<<: *install-deps

- name: Build mineflayer-collectblock
<<: *build-mineflayer

- name: Build frontend with Vite
run: |
cd frontend
npx vite build
<<: *build-frontend

- name: Prepare for code signing
run: |
mkdir -p ~/private_keys/
echo "${{ secrets.MAC_CERTS }}" | base64 --decode > ~/private_keys/certs.p12
echo "${{ secrets.NOTA_CERT }}" | base64 --decode > ~/private_keys/notarize.p8
security create-keychain -p "" build.keychain
security default-keychain -s build.keychain
security unlock-keychain -p "" build.keychain
security import ~/private_keys/certs.p12 -k build.keychain -P "${{ secrets.MAC_CERTS_PASSWORD }}" -T /usr/bin/codesign
security set-key-partition-list -S apple-tool:,apple: -s -k "" build.keychain
<<: *prepare-signing

- name: Build/release Electron app (macOS - x64)
uses: samuelmeuli/[email protected]
Expand All @@ -64,26 +54,16 @@ jobs:
node-version: '18'

- name: Install dependencies
run: |
npm install --include=dev
cd frontend
npm install --include=dev
<<: *install-deps

- name: Build mineflayer-collectblock
<<: *build-mineflayer

- name: Build frontend with Vite
run: |
cd frontend
npx vite build
<<: *build-frontend

- name: Prepare for code signing
run: |
mkdir -p ~/private_keys/
echo "${{ secrets.MAC_CERTS }}" | base64 --decode > ~/private_keys/certs.p12
echo "${{ secrets.NOTA_CERT }}" | base64 --decode > ~/private_keys/notarize.p8
security create-keychain -p "" build.keychain
security default-keychain -s build.keychain
security unlock-keychain -p "" build.keychain
security import ~/private_keys/certs.p12 -k build.keychain -P "${{ secrets.MAC_CERTS_PASSWORD }}" -T /usr/bin/codesign
security set-key-partition-list -S apple-tool:,apple: -s -k "" build.keychain
<<: *prepare-signing

- name: Build/release Electron app (macOS - arm64)
uses: samuelmeuli/[email protected]
Expand Down Expand Up @@ -114,19 +94,45 @@ jobs:
node-version: '18'

- name: Install dependencies
run: |
npm install --include=dev
cd frontend
npm install --include=dev
<<: *install-deps

- name: Build mineflayer-collectblock
<<: *build-mineflayer

- name: Build frontend with Vite
run: |
cd frontend
npx vite build
<<: *build-frontend

- name: Build/release Electron app (non-macOS)
uses: samuelmeuli/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
release: ${{ startsWith(github.ref, 'refs/tags/v') }}
publish: always
publish: always

# Define reusable steps
install-deps: &install-deps
run: |
npm install --include=dev
cd frontend
npm install --include=dev
build-frontend: &build-frontend
run: |
cd frontend
npx vite build
prepare-signing: &prepare-signing
run: |
mkdir -p ~/private_keys/
echo "${{ secrets.MAC_CERTS }}" | base64 --decode > ~/private_keys/certs.p12
echo "${{ secrets.NOTA_CERT }}" | base64 --decode > ~/private_keys/notarize.p8
security create-keychain -p "" build.keychain
security default-keychain -s build.keychain
security unlock-keychain -p "" build.keychain
security import ~/private_keys/certs.p12 -k build.keychain -P "${{ secrets.MAC_CERTS_PASSWORD }}" -T /usr/bin/codesign
security set-key-partition-list -S apple-tool:,apple: -s -k "" build.keychain
build-mineflayer: &build-mineflayer
run: |
cd mineflayer-collectblock
npm run build
3 changes: 2 additions & 1 deletion release.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,9 @@ try {

execSync('git add package.json frontend/package.json main.js');
execSync(`git commit -m "Release v${newVersion}"`, { stdio: 'inherit' });
execSync('git push', { stdio: 'inherit' });
execSync(`git tag -a v${newVersion} -m "Release v${newVersion}"`, { stdio: 'inherit' });
execSync('git push && git push --tags', { stdio: 'inherit' });
execSync(`git push origin v${newVersion}`, { stdio: 'inherit' });

console.log('Release process completed successfully.');
} catch (error) {
Expand Down

0 comments on commit c4c6011

Please sign in to comment.