Skip to content

feat: create release #14

feat: create release

feat: create release #14

Workflow file for this run

name: build
on:
push:
branches:
- versioning
# tags:
# - "v*.*.*"
jobs:
build:
runs-on: macos-13
steps:
- uses: actions/checkout@v3
name: Checkout
# - name: Install go
# run: |
# brew install go
# GO_BINARY=$(which go)
# echo "GO_BINARY=$GO_BINARY" >> .xcode.env.local
# - name: Select Xcode
# run: sudo xcode-select -s "/Applications/Xcode_15.1.app"
# - name: Resolve dependencies
# run: xcodebuild -resolvePackageDependencies
# - name: Config environment
# run: |
# SCHEME=$(xcodebuild -list -json | jq -r '.project.schemes[0]')
# BUILD_SETTINGS=$(xcodebuild -scheme "$SCHEME" -showBuildSettings -json | jq -r '.[0].buildSettings')
# FULL_PRODUCT_NAME=$(echo $BUILD_SETTINGS | jq -r '.FULL_PRODUCT_NAME')
# PRODUCT_NAME=$(echo $BUILD_SETTINGS | jq -r '.PRODUCT_NAME')
# echo "SCHEME=$SCHEME" >> "$GITHUB_ENV"
# echo "FULL_PRODUCT_NAME=$FULL_PRODUCT_NAME" >> "$GITHUB_ENV"
# echo "PRODUCT_NAME=$PRODUCT_NAME" >> "$GITHUB_ENV"
# - name: Install the Apple certificate
# env:
# BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
# P12_PASSWORD: ${{ secrets.P12_PASSWORD }}
# KEYCHAIN_PASSWORD: ${{ secrets.KEYCHAIN_PASSWORD }}
# run: |
# # create variables
# CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12
# KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db
# # import certificate from secrets
# echo -n "$BUILD_CERTIFICATE_BASE64" | base64 --decode -o $CERTIFICATE_PATH
# # create temporary keychain
# security create-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH
# security set-keychain-settings -lut 21600 $KEYCHAIN_PATH
# security unlock-keychain -p "$KEYCHAIN_PASSWORD" $KEYCHAIN_PATH
# # import certificate to keychain
# security import $CERTIFICATE_PATH -P "$P12_PASSWORD" -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
# security list-keychain -d user -s $KEYCHAIN_PATH
# - name: Build
# run: xcodebuild -scheme "$SCHEME" install DSTROOT=Build | xcpretty
# - name: Package
# run: |
# npm install -g create-dmg
# mkdir -p Build/dmg
# create-dmg "Build/Applications/$FULL_PRODUCT_NAME" Build/dmg
# mv Build/dmg/*.dmg Build/$PRODUCT_NAME.dmg
# rm -r Build/dmg
# - name: Archive production artifacts
# uses: actions/upload-artifact@v3
# with:
# name: ${{ env.PRODUCT_NAME }}.dmg
# path: Build/${{ env.PRODUCT_NAME }}.dmg
- name: Prepare for release
# if: startsWith(github.ref, 'refs/tags/')
run: |
set -e
VERSION=$(cat package.json | jq -r .version)
DMG_NAME="Build/DotLocal-v$VERSION.dmg"
CHANGELOG_PATH="$RUNNER_TEMP/CHANGELOG.md"
./scripts/changelog.sh > $CHANGELOG_PATH
echo "VERSION=$VERSION" >> "$GITHUB_ENV"
echo "DMG_NAME=$DMG_NAME" >> "$GITHUB_ENV"
echo "CHANGELOG_PATH=$CHANGELOG_PATH" >> "$GITHUB_ENV"
- name: Release
uses: softprops/action-gh-release@v1
# if: startsWith(github.ref, 'refs/tags/')
with:
files: ${{ env.DMG_NAME }}