mirror of
https://github.com/aljazceru/breez-sdk-liquid.git
synced 2025-12-30 20:34:27 +01:00
104 lines
3.5 KiB
YAML
104 lines
3.5 KiB
YAML
name: Publish Flutter Package
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
repository:
|
|
description: 'sdk repository, defaults to current repository'
|
|
required: false
|
|
type: string
|
|
ref:
|
|
description: 'commit/tag/branch reference'
|
|
required: true
|
|
type: string
|
|
package-version:
|
|
description: 'version for the flutter package (MAJOR.MINOR.BUILD) (no v prefix)'
|
|
required: true
|
|
type: string
|
|
publish:
|
|
description: 'value indicating whether to commit/tag a release.'
|
|
required: true
|
|
type: boolean
|
|
default: true
|
|
secrets:
|
|
REPO_SSH_KEY:
|
|
description: 'ssh key to commit to the breez-liquid-sdk-flutter repository'
|
|
required: true
|
|
|
|
jobs:
|
|
build-tag-release:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout breez-liquid-sdk-flutter repo
|
|
uses: actions/checkout@v3
|
|
with:
|
|
repository: breez/breez-liquid-sdk-flutter
|
|
ssh-key: ${{ secrets.REPO_SSH_KEY }}
|
|
fetch-depth: 0
|
|
path: dist
|
|
|
|
- name: Checkout breez-liquid-sdk repo
|
|
uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ inputs.repository || github.repository }}
|
|
ref: ${{ inputs.ref || github.sha }}
|
|
path: build
|
|
|
|
- uses: subosito/flutter-action@v2
|
|
with:
|
|
channel: 'stable'
|
|
|
|
- name: Copy package files
|
|
working-directory: dist
|
|
run: |
|
|
rm -r ios
|
|
rm -r android
|
|
rm -r lib
|
|
cp -r ../build/lib/bindings/bindings-flutter/ios .
|
|
mv ios/breez_liquid_sdk.podspec.production ios/breez_liquid_sdk.podspec
|
|
cp -r ../build/lib/bindings/bindings-flutter/android .
|
|
mv android/build.gradle.production android/build.gradle
|
|
cp -r ../build/lib/bindings/bindings-flutter/lib .
|
|
cp ../build/lib/bindings/bindings-flutter/pubspec.yaml .
|
|
cp ../build/lib/bindings/bindings-flutter/pubspec.lock .
|
|
|
|
- name: Copy docs
|
|
working-directory: dist
|
|
run: |
|
|
cp ../build/lib/bindings/bindings-flutter/README.pub.md README.md || true
|
|
cp ../build/lib/bindings/bindings-flutter/CHANGELOG.md . || true
|
|
|
|
- uses: actions/download-artifact@v3
|
|
with:
|
|
name: bindings-swift
|
|
path: dist/ios/bindings-swift/Sources/BreezLiquidSDK/
|
|
|
|
- name: Set package version
|
|
working-directory: dist
|
|
run: |
|
|
sed -i.bak -e 's/version:.*/version: ${{ inputs.package-version }}/' pubspec.yaml
|
|
sed -i.bak -e "s/^version .*/version '${{ inputs.package-version }}'/" android/build.gradle
|
|
sed -i.bak -e "s/^tag_version = .*/tag_version = '${{ inputs.package-version }}'/" ios/breez_liquid_sdk.podspec
|
|
rm pubspec.yaml.bak
|
|
rm android/build.gradle.bak
|
|
rm ios/breez_liquid_sdk.podspec.bak
|
|
|
|
- name: Archive flutter release
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: breez-liquid-sdk-flutter-${{ inputs.package-version || github.sha }}
|
|
path: |
|
|
dist/*
|
|
!dist/.git
|
|
|
|
- name: Tag the Flutter package
|
|
working-directory: dist
|
|
if: ${{ inputs.publish }}
|
|
run: |
|
|
git config --global user.email github-actions@github.com
|
|
git config --global user.name github-actions
|
|
git add .
|
|
git commit -m "Update Breez SDK Flutter package to version v${{ inputs.package-version }}"
|
|
git push
|
|
git tag v${{ inputs.package-version }} -m "v${{ inputs.package-version }}"
|
|
git push --tags
|