Skip to content

Commit

Permalink
Merge pull request #16 from avr/ci/14/release-automation
Browse files Browse the repository at this point in the history
🤖 ci: #14 Add build and release actions
  • Loading branch information
nathonius committed Aug 30, 2024
2 parents 6b470b4 + c867336 commit e0f8e88
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 77 deletions.
21 changes: 21 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Build
on:
- workflow_call
- workflow_dispatch
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- name: Build
run: |
npm install
npm run build
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: dist
path: |
main.js
manifest.json
95 changes: 18 additions & 77 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,88 +1,29 @@
name: Release Obsidian plugin

name: Draft Release
on:
push:
tags:
- "*"

env:
PLUGIN_NAME: obsidian-reading-time # Change this to match the id of your plugin.

jobs:
build:
uses: "./.github/workflows/build.yml"
draft:
needs: build
runs-on: ubuntu-latest

permissions:
contents: write
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: "14.x"

- name: Build
id: build
run: |
npm install
npm run build
mkdir ${{ env.PLUGIN_NAME }}
# cp main.js manifest.json styles.css ${{ env.PLUGIN_NAME }}
cp main.js manifest.json ${{ env.PLUGIN_NAME }}
zip -r ${{ env.PLUGIN_NAME }}.zip ${{ env.PLUGIN_NAME }}
ls
echo "::set-output name=tag_name::$(git tag --sort version:refname | tail -n 1)"
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
VERSION: ${{ github.ref }}
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/download-artifact@v4
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
draft: false
prerelease: false

- name: Upload zip file
id: upload-zip
uses: actions/upload-release-asset@v1
merge-multiple: true
- name: Create Draft
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./${{ env.PLUGIN_NAME }}.zip
asset_name: ${{ env.PLUGIN_NAME }}-${{ steps.build.outputs.tag_name }}.zip
asset_content_type: application/zip

- name: Upload main.js
id: upload-main
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./main.js
asset_name: main.js
asset_content_type: text/javascript

- name: Upload manifest.json
id: upload-manifest
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./manifest.json
asset_name: manifest.json
asset_content_type: application/json
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
run: |
tag="${GITHUB_REF#refs/tags/}"
# - name: Upload styles.css
# id: upload-css
# uses: actions/upload-release-asset@v1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# upload_url: ${{ steps.create_release.outputs.upload_url }}
# asset_path: ./styles.css
# asset_name: styles.css
# asset_content_type: text/css
gh release create "$tag" \
--title="Release v$tag" \
--draft \
main.js manifest.json

0 comments on commit e0f8e88

Please sign in to comment.