Skip to content

Commit

Permalink
added github workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
aho-dips committed Nov 29, 2023
1 parent d235470 commit 53c0562
Showing 1 changed file with 100 additions and 0 deletions.
100 changes: 100 additions & 0 deletions .github/workflows/main.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
name: 'Release smud CLI'

on:
workflow_dispatch: # click the button on Github repo!

push:
branches: [main]
paths-ignore:
- "**/README.md"

jobs:
release_smud_cli:
strategy:
matrix:
os: [ ubuntu-latest ]
# os: [ ubuntu-latest, macos-latest, windows-latest ]
runs-on: ${{ matrix.os }}
timeout-minutes: 360
env:
BUILD_ID: ${{ github.run_number }}
name: Release smud CLI
steps:
# REQUIRED step
# Step 1: run a standard checkout action, provided by github
- name: Checkout target repo
uses: actions/checkout@v3
with:
# optional: set the branch to checkout,
# sync action checks out your 'target_sync_branch' anyway
ref: main
# REQUIRED if your upstream repo is private (see wiki)
persist-credentials: false
- name: Parse Changelog
id: changelog
uses: ocavue/changelog-parser-action@v1
with:
filePath: "./CHANGELOG.md"
- name: Export version to variable
run: echo "CLI_VERSION=${{ steps.changelog.outputs.latestVersion }}" >> $GITHUB_ENV
shell: bash
- name: Export DEST folder to variable
run: echo "DEST=dist/smud-cli-${{ env.CLI_VERSION }}-${{ env.BUILD_ID }}.${{ matrix.os }}" >> $GITHUB_ENV
shell: bash

- name: Export ZIP FILE to variable
run: echo "ZIP=${{ env.DEST }}.zip" >> $GITHUB_ENV
shell: bash

- name: Build CLI
shell: bash
run: |
mkdir dist
mkdir $DEST
cp CHANGELOG.md $DEST/
cp smud-cli/.bash_aliases $DEST/
cp smud-cli/*.* $DEST/
- name: Zip Folder
run: zip -r ${{ env.ZIP }} ${{ env.DEST }}/*

- name: List files
shell: bash
run: |
ls -la dist
ls -la $DEST
# - name: Calculate SHA256 checksum
# run: |-
# if command -v shasum 2>/dev/null 1>&2; then
# for filename in smud-cli*; do shasum -a 256 "${filename}" | tee "${filename}.sha256" ; done
# else
# for filename in smud-cli*; do certutil -hashfile "${filename}" SHA256 | tee "${filename}.sha256" ; done
# fi

# shell: bash
# working-directory: "{{ env.DEST }}"

- name: Generate Changelog
run: curl -s https://api.github.com/repos/DIPSAS/spud-cli/releases/latest | jq -r 'select(.prerelease == false) | .body[0:]' > ${{ github.workspace }}-CHANGELOG.txt


- uses: actions/upload-artifact@v3
with:
name: smud-cli-${{ matrix.os }}
path: ${{ env.ZIP }}

- name: Release
uses: softprops/[email protected]
if: github.ref == 'refs/heads/main'
with:
tag_name: v${{ env.CLI_VERSION }}-${{ env.BUILD_ID }}
body_path: ${{ github.workspace }}-CHANGELOG.txt
file: ${{ env.ZIP }}

- name: Latest
uses: softprops/[email protected]
if: github.ref == 'refs/heads/main'
with:
tag_name: Latest
file: ${{ env.ZIP }}

0 comments on commit 53c0562

Please sign in to comment.