Create Release PR #5
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: "Create Release PR" | |
on: | |
workflow_dispatch: | |
inputs: | |
versionNumber: | |
description: 'Version Number' | |
required: true | |
env: | |
BRANCH_NAME: "release/${{ github.event.inputs.versionNumber }}" | |
VERSION_NUMBER: ${{ github.event.inputs.versionNumber }} | |
jobs: | |
create-release-pr: | |
runs-on: macos-latest | |
timeout-minutes: 5 | |
name: "Create Release PR" | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v4 | |
with: | |
ref: main | |
- name: Setup SSH Keys | |
uses: webfactory/[email protected] | |
with: | |
ssh-private-key: | | |
${{ secrets.APOLLO_IOS_DEV_DEPLOY_KEY }} | |
- name: Configure Git | |
uses: ./.github/actions/configure-git | |
- name: Get Previous Version | |
shell: bash | |
run: | | |
previousVersion=$(sh apollo-ios/scripts/get-version.sh) | |
echo "PREVIOUS_VERSION=$previousVersion" >> ${GITHUB_ENV} | |
- name: Set New Version | |
shell: bash | |
run: | | |
sh ./scripts/set-version.sh "${{ env.VERSION_NUMBER }}" | |
- name: Generate Documentation | |
shell: bash | |
run: | | |
cd SwiftScripts | |
swift run DocumentationGenerator | |
- name: Archive CLI | |
shell: bash | |
run: | | |
make archive-cli-to-apollo-package | |
- name: Create Pull Request | |
uses: peter-evans/create-pull-request@v6 | |
with: | |
branch: ${{ env.BRANCH_NAME }} | |
commit-message: | | |
Setting up Release ${{ env.VERSION_NUMBER }} | |
Created By GitHub Action Workflow | |
title: | | |
Release ${{ env.VERSION_NUMBER }} | |
body: | | |
#### Diff | |
[See diff since last version](https://github.com/apollographql/apollo-ios-dev/compare/${{ env.PREVIOUS_VERSION }}...${{ github.sha }}). | |
#### Things to do in this PR | |
- [ ] Update [`CHANGELOG.md`](https://github.com/apollographql/apollo-ios/blob/main/CHANGELOG.md) with all relevant changes since the prior version. _Please include PR numbers and mention contributors for external PR submissions._ | |
#### Things to do as part of releasing | |
- [ ] Add tag of format `major.minor.patch` to GitHub. | |
- [ ] Create a release on GitHub with the new tag, using the latest [`CHANGELOG.md`](https://github.com/apollographql/apollo-ios/blob/main/CHANGELOG.md) contents. | |
- [ ] Attach CLI binary to the GitHub release. | |
- [ ] Run `pod trunk push Apollo.podspec` and `pod trunk push ApolloTestSupport.podspec` to publish to CocoaPods. _You will need write permissions for this, please contact one of the [maintainers](https://github.com/apollographql/apollo-ios/blob/main/README.md#maintainers) if you need access to do this._ | |
- [ ] Run "[Release New Version](https://github.com/apollographql/apollo-ios-xcframework/actions/workflows/release-new-version.yml)" workflow in `apollo-ios-xcframework` |