Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Amazon Linux version(s) used in Build & Test workflow #357

Merged
merged 3 commits into from
Jan 13, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 15 additions & 25 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,25 +13,15 @@ jobs:
# Run all jobs, even if one fails. This makes it easier to gather debugging info for various platforms.
fail-fast: false
matrix:
image: ['amazonlinux:1', 'amazonlinux:2']
image: ['amazonlinux:2023']
toolchain: [ "gcc", "clang" ]
include:
- image: amazonlinux:2
- image: amazonlinux:2023
toolchain: gcc
compiler: { cc: 'gcc', cxx: 'g++', packages: 'gcc gcc-c++' }
- image: amazonlinux:2
compiler: { cc: 'gcc', cxx: 'g++', packages: 'gcc gcc-c++', cflags: '', cxxflags: '', ldflags: '' }
- image: amazonlinux:2023
toolchain: clang
compiler: { cc: 'clang', cxx: 'clang++', packages: 'clang gcc10-c++ compiler-rt' }
# amazonlinux:1's 'gcc'/'gcc-c++' packages install 4.8.5 which do not support C++14 which is needed
# by our googletest version. The clang package installs 3.6.2, which supports C++14, but does not support
# the sanitizers we want to use to capture issues during unit testing.
- image: amazonlinux:1
toolchain: gcc
compiler: { cc: 'gcc', cxx: 'g++', packages: "gcc72 gcc72-c++" }
# Need to set the target for clang, since the default target it is configured with differs from the gcc target installed that it depends on.
- image: amazonlinux:1
toolchain: clang
compiler: { cc: 'clang', cxx: 'clang++', packages: 'clang6.0', cxxflags: "-target x86_64-amazon-linux", cflags: "-target x86_64-amazon-linux" }
compiler: { cc: 'clang', cxx: 'clang++', packages: 'clang', cflags: '', cxxflags: '', ldflags: '' }
runs-on: ubuntu-latest
container: ${{ matrix.image }}
env:
Expand All @@ -47,21 +37,21 @@ jobs:
ACTIONS_RUNNER_FORCE_ACTIONS_NODE_VERSION: node16
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
steps:
# Amazon Linux needs a newer version of git installed for actions/checkout@v2
# Amazon Linux needs a newer version of git installed for actions/checkout
- name: Install Dependencies
run: |
yum install which git make cmake3 -y
ln -s `which cmake3` /usr/bin/cmake
if [ ! -e '/usr/bin/cmake' ]; then ln -s "$(which cmake3)" /usr/bin/cmake; fi
- name: Install ${{ matrix.compiler.cc }}
run: yum install ${{ matrix.compiler.packages }} -y
- name: Checkout Code
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: recursive
fetch-tags: true
fetch-depth: 50 # we need to be able to fetch the tag that is nearest to the current commit.
- name: Create git config # Fixes an issue where git refuses to work due to dubious permissions.
run: git config --system --add safe.directory $GITHUB_WORKSPACE
run: git config --system --add safe.directory "$GITHUB_WORKSPACE"
- name: Build Debug
run: ./build-debug.sh
- name: Test Debug
Expand All @@ -83,12 +73,12 @@ jobs:
toolchain: ['gcc', 'clang']
include:
- toolchain: clang
compiler: { cc: 'clang', cxx: 'clang++' }
compiler: { cc: 'clang', cxx: 'clang++', cflags: '', cxxflags: '', ldflags: '' }
- toolchain: gcc
compiler: { cc: 'gcc', cxx: 'g++' }
compiler: { cc: 'gcc', cxx: 'g++', cflags: '', cxxflags: '', ldflags: '' }
- image: 'macos-latest'
toolchain: gcc
compiler: { cc: 'gcc-14', cxx: 'g++-14' }
compiler: { cc: 'gcc-14', cxx: 'g++-14', cflags: '', cxxflags: '', ldflags: '' }
runs-on: ${{ matrix.image }}
env:
CC: ${{ matrix.compiler.cc }}
Expand All @@ -100,13 +90,13 @@ jobs:
ASAN_OPTIONS: "halt_on_error=0"
steps:
- name: Checkout Code
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: recursive
fetch-tags: true
fetch-depth: 50
- name: Create git config # Fixes an issue where git refuses to work due to dubious permissions.
run: git config --global --add safe.directory $GITHUB_WORKSPACE
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- name: Build Debug
id: build_debug
run: ./build-debug.sh
Expand All @@ -130,7 +120,7 @@ jobs:
- name: Install Doxygen
run: sudo apt-get install doxygen -y
- name: Checkout Code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
submodules: recursive
- name: Run Doxygen
Expand Down
Loading