Skip to content

Codegen & Release Configuration Build #247

Codegen & Release Configuration Build

Codegen & Release Configuration Build #247

# This script regenerates all models, then builds the full SDK with release configuration.
#
# The swift build command builds the SDK with debugging configuration by default, but there exist
# certain errors that only the release configuration build catches due to difference in
# compiler optimization between the two build modes.
name: Codegen & Release Configuration Build
on:
workflow_dispatch:
schedule:
- cron: '0 7 * * *'
env:
AWS_SWIFT_SDK_USE_LOCAL_DEPS: 1
jobs:
codegen-build-with-release-configuration:
runs-on: macos-14
env:
DEVELOPER_DIR: /Applications/Xcode_15.4.app/Contents/Developer
steps:
- name: Checkout aws-sdk-swift
uses: actions/checkout@v3
- name: Select smithy-swift branch
run: |
ORIGINAL_REPO_HEAD_REF="${GITHUB_HEAD_REF:-$GITHUB_REF_NAME}" \
DEPENDENCY_REPO_URL="https://github.com/smithy-lang/smithy-swift.git" \
./scripts/ci_steps/select_dependency_branch.sh
- name: Checkout smithy-swift
uses: actions/checkout@v3
with:
repository: smithy-lang/smithy-swift
ref: ${{ env.DEPENDENCY_REPO_SHA }}
path: smithy-swift
- name: Move smithy-swift into place
run: mv smithy-swift ..
- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: corretto
java-version: 17
- name: Tools Versions
run: ./scripts/ci_steps/log_tool_versions.sh
- name: Code-Generate SDK
run: ./scripts/ci_steps/codegen_sdk.sh
- name: Build SDK with release configuration
run: swift build -c release