Skip to content
This repository has been archived by the owner on Dec 15, 2023. It is now read-only.

Commit

Permalink
chore: switch to release-please
Browse files Browse the repository at this point in the history
  • Loading branch information
valentine195 committed May 13, 2023
1 parent c8b63e1 commit 198e52b
Show file tree
Hide file tree
Showing 6 changed files with 217 additions and 29 deletions.
116 changes: 116 additions & 0 deletions .github/workflows/release-please-beta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
on:
workflow_dispatch:

push:
branches:
- "beta"
env:
PLUGIN_NAME: fantasy-calendar

permissions:
contents: write
pull-requests: write

name: release-please

jobs:
release-please:
runs-on: ubuntu-latest
outputs:
release_created: ${{ steps.release.outputs.release_created }}
upload_url: ${{ steps.release.outputs.upload_url }}
tag_name: ${{ steps.release.outputs.tag_name }}
steps:
- uses: google-github-actions/release-please-action@v3
id: release
with:
command: manifest
config-file: release-please-config-beta.json
manifest-file: .release-please-manifest-beta.json

upload-build:
runs-on: ubuntu-latest
needs: release-please
if: ${{ needs.release-please.outputs.release_created }}
env:
upload_url: ${{ needs.release-please.outputs.upload_url }}
tag_name: ${{ needs.release-please.outputs.tag_name }}
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: "18.x" # You might need to adjust this value to your own version
- name: Build
id: build
run: |
npm install
npm run build --if-present
mkdir ${{ env.PLUGIN_NAME }}
cp main.js manifest.json styles.css ${{ env.PLUGIN_NAME }}
zip -r ${{ env.PLUGIN_NAME }}.zip ${{ env.PLUGIN_NAME }}
- name: Upload zip file
id: upload-zip
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ env.upload_url }}
asset_path: ./${{ env.PLUGIN_NAME }}.zip
asset_name: ${{ env.PLUGIN_NAME }}-${{ env.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: ${{ env.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: ${{ env.upload_url }}
asset_path: ./manifest.json
asset_name: manifest.json
asset_content_type: application/json
- name: Upload styles.css
id: upload-css
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ env.upload_url }}
asset_path: ./styles.css
asset_name: styles.css
asset_content_type: text/css

notify-obsidian:
runs-on: ubuntu-latest
needs: upload-build
steps:
- name: Webhook
uses: javalent/workflows/actions/discord-embed@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
secrets: inherit
name: Fantasy Calendar
webhook-urls: ${{ secrets.OBSIDIAN_WEBHOOK }}
notify-ttrpg:
runs-on: ubuntu-latest
needs: upload-build
steps:
- name: Webhook
uses: javalent/workflows/actions/discord-embed@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
secrets: inherit
name: Fantasy Calendar
webhook-urls: ${{ secrets.TTRPG_WEBHOOK }}
Original file line number Diff line number Diff line change
@@ -1,24 +1,44 @@
name: Build obsidian plugin

on:
push:
# Sequence of patterns matched against refs/tags
tags:
- "*" # Push events to matching any tag format, i.e. 1.0, 20.15.10
workflow_dispatch:

push:
branches:
- "master"
env:
PLUGIN_NAME: fantasy-calendar # Change this to the name of your plugin-id folder
PLUGIN_NAME: fantasy-calendar

permissions:
contents: write
pull-requests: write

name: release-please

jobs:
build:
release-please:
runs-on: ubuntu-latest
outputs:
release_created: ${{ steps.release.outputs.release_created }}
upload_url: ${{ steps.release.outputs.upload_url }}
tag_name: ${{ steps.release.outputs.tag_name }}
steps:
- uses: google-github-actions/release-please-action@v3
id: release
with:
command: manifest

upload-build:
runs-on: ubuntu-latest
needs: release-please
if: ${{ needs.release-please.outputs.release_created }}
env:
upload_url: ${{ needs.release-please.outputs.upload_url }}
tag_name: ${{ needs.release-please.outputs.tag_name }}
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: "16.x" # You might need to adjust this value to your own version
node-version: "18.x" # You might need to adjust this value to your own version
- name: Build
id: build
run: |
Expand All @@ -27,38 +47,23 @@ jobs:
mkdir ${{ env.PLUGIN_NAME }}
cp main.js manifest.json styles.css ${{ env.PLUGIN_NAME }}
zip -r ${{ env.PLUGIN_NAME }}.zip ${{ env.PLUGIN_NAME }}
ls
npx rexreplace "^.*?#(#+\s\[.*?\n.*?)(?=\s*#+\s\[)" "_" -s -M -G -m -o "CHANGELOG.md" > release_notes.md
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 }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
draft: false
body_path: release_notes.md
prerelease: false
- name: Upload zip file
id: upload-zip
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
upload_url: ${{ env.upload_url }}
asset_path: ./${{ env.PLUGIN_NAME }}.zip
asset_name: ${{ env.PLUGIN_NAME }}-${{ steps.build.outputs.tag_name }}.zip
asset_name: ${{ env.PLUGIN_NAME }}-${{ env.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 }}
upload_url: ${{ env.upload_url }}
asset_path: ./main.js
asset_name: main.js
asset_content_type: text/javascript
Expand All @@ -68,7 +73,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
upload_url: ${{ env.upload_url }}
asset_path: ./manifest.json
asset_name: manifest.json
asset_content_type: application/json
Expand All @@ -78,7 +83,28 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
upload_url: ${{ env.upload_url }}
asset_path: ./styles.css
asset_name: styles.css
asset_content_type: text/css

notify-obsidian:
runs-on: ubuntu-latest
steps:
- name: Webhook
uses: javalent/workflows/actions/discord-embed@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
name: Fantasy Calendar
webhook-urls: ${{ secrets.OBSIDIAN_WEBHOOK }}
notify-ttrpg:
runs-on: ubuntu-latest
steps:
- name: Webhook
uses: javalent/workflows/actions/discord-embed@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
name: Fantasy Calendar
webhook-urls: ${{ secrets.TTRPG_WEBHOOK }}
3 changes: 3 additions & 0 deletions .release-please-manifest-beta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "3.1.0"
}
3 changes: 3 additions & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "3.1.0"
}
20 changes: 20 additions & 0 deletions release-please-config-beta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"packages": {
".": {
"changelog-path": "CHANGELOG.md",
"release-type": "node"
}
},
"include-component-in-tag": false,
"include-v-in-tag": false,
"extra-files": [
{
"type": "json",
"path": "manifest-beta.json",
"jsonpath": "$.version"
}
],
"last-release-sha": "930311d807a568545b1d4a51bb4ea33d26edaa76",

"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json"
}
20 changes: 20 additions & 0 deletions release-please-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"packages": {
".": {
"changelog-path": "CHANGELOG.md",
"release-type": "node"
}
},
"include-component-in-tag": false,
"include-v-in-tag": false,
"extra-files": [
{
"type": "json",
"path": "manifest.json",
"jsonpath": "$.version"
}
],
"last-release-sha": "930311d807a568545b1d4a51bb4ea33d26edaa76",

"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json"
}

0 comments on commit 198e52b

Please sign in to comment.