Add CodeMenu (#1445) #604
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: GitHub Actions Build and Deploy awesome-mac | |
on: | |
push: | |
branches: | |
- master | |
jobs: | |
build-deploy: | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
id-token: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
registry-url: 'https://registry.npmjs.org' | |
- run: npm install | |
- run: npm run build | |
- run: npm run create:ast | |
- name: Deploy | |
uses: peaceiris/actions-gh-pages@v4 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: ./dist | |
user_name: github-actions[bot] | |
user_email: github-actions[bot]@users.noreply.github.com | |
- name: Create Tag | |
id: create_tag | |
uses: jaywcjlove/create-tag-action@main | |
with: | |
package-path: ./package.json | |
- name: Generate Changelog | |
id: changelog | |
uses: jaywcjlove/changelog-generator@main | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
head-ref: ${{steps.create_tag.outputs.version}} | |
filter: '[R|r]elease[d]\s+[v|V]\d(\.\d+){0,2}' | |
- name: Create Release | |
uses: jaywcjlove/create-tag-action@main | |
if: steps.create_tag.outputs.successful | |
with: | |
package-path: ./package.json | |
version: ${{steps.create_tag.outputs.version}} | |
release: true | |
prerelease: false | |
draft: false | |
body: | | |
[![Buy me a coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor) [![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/awesome-mac@${{steps.create_tag.outputs.versionNumber}}/file/README.md) [![Docker Image Version (latest by date)](https://img.shields.io/docker/v/wcjiang/awesome-mac?logo=docker)](https://hub.docker.com/r/wcjiang/awesome-mac) | |
Documentation ${{ steps.changelog.outputs.tag }}: https://raw.githack.com/jaywcjlove/awesome-mac/${{ steps.changelog.outputs.gh-pages-short-hash }}/index.html | |
Comparing Changes: ${{ steps.changelog.outputs.compareurl }} | |
${{ steps.changelog.outputs.changelog }} | |
```bash | |
npm i awesome-mac@${{steps.create_tag.outputs.versionNumber}} | |
# dist/awesome-mac.json | |
# dist/awesome-mac.zh.json | |
``` | |
## Docker | |
```bash | |
docker pull wcjiang/awesome-mac:${{steps.changelog.outputs.version}} | |
``` | |
```bash | |
docker run --name awesome-mac --rm -d -p 9881:3000 wcjiang/awesome-mac:${{steps.changelog.outputs.version}} | |
# Or | |
docker run --name awesome-mac -itd -p 9881:3000 wcjiang/awesome-mac:${{steps.changelog.outputs.version}} | |
``` | |
Visit the following URL in your browser | |
```bash | |
http://localhost:9881/ | |
``` | |
# - name: Create Release | |
# uses: ncipollo/release-action@v1 | |
# if: steps.create_tag.outputs.successful | |
# with: | |
# name: ${{ steps.create_tag.outputs.version }} | |
# tag: ${{ steps.create_tag.outputs.version }} | |
# token: ${{ secrets.GITHUB_TOKEN }} | |
# body: | | |
# [![Buy me a coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor) [![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/awesome-mac@${{steps.create_tag.outputs.versionNumber}}/file/README.md) [![Docker Image Version (latest by date)](https://img.shields.io/docker/v/wcjiang/awesome-mac?logo=docker)](https://hub.docker.com/r/wcjiang/awesome-mac) | |
# Documentation ${{ steps.changelog.outputs.tag }}: https://raw.githack.com/jaywcjlove/awesome-mac/${{ steps.changelog.outputs.gh-pages-short-hash }}/index.html | |
# Comparing Changes: ${{ steps.changelog.outputs.compareurl }} | |
# ${{ steps.changelog.outputs.changelog }} | |
# ```bash | |
# npm i awesome-mac@${{steps.create_tag.outputs.versionNumber}} | |
# # dist/awesome-mac.json | |
# # dist/awesome-mac.zh.json | |
# ``` | |
# ## Docker | |
# ```bash | |
# docker pull wcjiang/awesome-mac:${{steps.changelog.outputs.version}} | |
# ``` | |
# ```bash | |
# docker run --name awesome-mac --rm -d -p 9881:3000 wcjiang/awesome-mac:${{steps.changelog.outputs.version}} | |
# # Or | |
# docker run --name awesome-mac -itd -p 9881:3000 wcjiang/awesome-mac:${{steps.changelog.outputs.version}} | |
# ``` | |
# Visit the following URL in your browser | |
# ```bash | |
# http://localhost:9881/ | |
# ``` | |
# - run: npm install @jsdevtools/npm-publish -g | |
# - run: npm-publish --token="${{ secrets.NPM_TOKEN }}" ./package.json | |
- run: npm publish --access public --provenance | |
continue-on-error: true | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
# Create Docker Image | |
- name: Docker login | |
if: steps.create_tag.outputs.successful | |
run: docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASSWORD }} | |
- name: Build Awesome Mac image | |
run: docker image build -t awesome-mac . | |
- name: Tags & Push image (latest) | |
if: steps.create_tag.outputs.successful | |
run: | | |
echo "outputs.tag - ${{ steps.changelog.outputs.version }}" | |
docker tag awesome-mac ${{ secrets.DOCKER_USER }}/awesome-mac:latest | |
docker push ${{ secrets.DOCKER_USER }}/awesome-mac:latest | |
- name: Tags & Push image | |
if: steps.create_tag.outputs.successful | |
run: | | |
echo "outputs.tag - ${{ steps.changelog.outputs.version }}" | |
docker tag awesome-mac ${{ secrets.DOCKER_USER }}/awesome-mac:${{steps.changelog.outputs.version}} | |
docker push ${{ secrets.DOCKER_USER }}/awesome-mac:${{steps.changelog.outputs.version}} | |
# Create Docker Image in GitHub | |
# - name: Login to GitHub registry | |
# run: echo ${{ github.token }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
# - name: Build docker image | |
# run: docker build -t ghcr.io/jaywcjlove/awesome-mac:latest . | |
# - name: Publish to GitHub registry | |
# run: docker push ghcr.io/jaywcjlove/awesome-mac:latest | |
# - name: Tag docker image (beta) and publish to GitHub registry | |
# if: steps.create_tag.outputs.successful | |
# run: | | |
# echo "version: v${{ steps.changelog.outputs.version }}" | |
# docker tag ghcr.io/jaywcjlove/awesome-mac:latest ghcr.io/jaywcjlove/awesome-mac:${{steps.changelog.outputs.version}} | |
# docker push ghcr.io/jaywcjlove/awesome-mac:${{steps.changelog.outputs.version}} |