Skip to content

Add release notes

Add release notes #17

Workflow file for this run

name: erl_interface
on:
push:
tags:
- "*.*.*"
jobs:
ios:
name: Build iOS
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/erl_interface_build
with:
otp_version: ${{ github.ref_name }}
xcomp_conf: xcomp/erl-xcomp-arm64-ios.conf
name: universal-libei-ios
ios_simulator_split_arch:
runs-on: macos-latest
strategy:
matrix:
arch: [arm64, x86_64]
name: Build iOS Simulator (${{ matrix.arch }})
steps:
- uses: actions/checkout@v4
- name: Build
uses: ./.github/actions/erl_interface_build
with:
otp_version: ${{ github.ref_name }}
xcomp_conf: xcomp/erl-xcomp-${{ matrix.arch }}-iossimulator.conf
name: libei-iossimulator-${{ matrix.arch }}
ios_simulator:
name: Merge iOS Simulator Archs
runs-on: macos-latest
needs: [ios_simulator_split_arch]
steps:
- name: Retrieve Artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
pattern: libei-iossimulator-*
- name: Merge Architectures
run: lipo -create -output universal-libei-iossimulator.a$(find artifacts -type f -name '*.a' | xargs -I{} printf -- ' {}')
- name: Produce Artifact
uses: actions/upload-artifact@v4
with:
name: universal-libei-iossimulator
path: universal-libei-iossimulator.a
xcframework:
runs-on: macos-latest
needs: [ios, ios_simulator]
steps:
- uses: actions/checkout@v4
with:
sparse-checkout: priv/erl_interface_include
- name: Retrieve Artifacts
uses: actions/download-artifact@v4
with:
pattern: universal-libei-*
path: artifacts
- name: Make xcframework
run: |
xcodebuild -create-xcframework -output erl_interface.xcframework $(find artifacts -type f -name '*.a' | xargs -I{} printf -- '-library %s -headers priv/erl_interface_include ' {})
zip -0 -r erl_interface.xcframework.zip erl_interface.xcframework
- name: Make release notes
run: |
cat <<RELEASE_NOTES >> release_notes.txt
# Swift Dependency
Add this binary target to use `erl_interface` from Swift.
\`\`\`swift
.binaryTarget(
name: "erl_interface",
url: "https://github.com/liveview-native/elixir_pack/releases/download/${{ github.ref_name }}/erl_interface.xcframework.zip",
checksum: "$(swift package compute-checksum erl_interface.xcframework.zip)"
)
\`\`\`
RELEASE_NOTES
- name: Release
uses: softprops/action-gh-release@v2
if: github.ref_type == 'tag'
with:
body_path: release_notes.txt
files: erl_interface.xcframework.zip