-
Notifications
You must be signed in to change notification settings - Fork 19
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
Add CI workflows #36
Add CI workflows #36
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is an open CDOT PR (CDOT-CV#14) that involves switching out ubuntu as the base image for the ACM with alpine. These changes look good for the current base image, but once these changes are in USDOT develop this will need to be modified.
runs-on: ubuntu-latest | ||
container: | ||
image: ubuntu:jammy-20230126 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are some incoming CDOT changes that replace ubuntu with alpine as the base image for the ACM. This will need to be modified once those changes have been merged into USDOT develop.
- name: Install necessary dependencies | ||
run: | | ||
apt update | ||
apt-get -y install sudo wget curl gnupg lsb-release gcovr unzip gcc-multilib libasan* | ||
sudo apt-get -y install software-properties-common | ||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - | ||
sudo add-apt-repository -y "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | ||
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | ||
chmod +x /usr/local/bin/docker-compose | ||
sudo apt-get -y update | ||
sudo apt-get -y install docker-ce | ||
working-directory: ${{ env.working-directory }} | ||
|
||
- name: Install g++ and related dependencies | ||
run: | | ||
sudo apt-get -y install build-essential | ||
sudo apt -y install cmake g++ libprotobuf-dev protobuf-compiler | ||
sudo apt -y install apt-transport-https ca-certificates curl software-properties-common | ||
export CXX="g++" | ||
sudo apt install -y gcc-12 g++-12 | ||
sudo apt -y install libpng-dev libgraphicsmagick1-dev libcairo2-dev | ||
working-directory: ${{ env.working-directory }} | ||
|
||
- name: Install librdkafka | ||
run: | | ||
sudo apt-get -y update && sudo apt-get -y upgrade | ||
sudo apt-get -y install automake flex bison | ||
sudo apt-get -y install build-essential | ||
sudo apt -y install cmake g++ libprotobuf-dev protobuf-compiler | ||
sudo apt-get install autotools-dev | ||
sudo apt -y install apt-transport-https ca-certificates curl software-properties-common | ||
git clone --depth 1 https://github.com/confluentinc/librdkafka.git librdkafka | ||
cd librdkafka | ||
cmake -H. -B_cmake_build | ||
cmake --build _cmake_build | ||
cmake --build _cmake_build --target install | ||
working-directory: ${{ env.working-directory }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All references to apt will need to be replaced with apk-equivalent statements when the incoming CDOT alpine-image changes are merged into USDOT develop.
# build asn1_codec | ||
mkdir build | ||
cd build | ||
cmake .. | ||
cmake --build . | ||
make | ||
ctest --output-on-failure |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Has this script been tested and verified to be working as expected?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Alpine base image switch probably won't be part of the Q3 release, so it seems like a good idea to merge this now. We can deal with the package manager modifications at a later time.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Alpine image work will wait until the next release for Q4, this is good to merge.
No description provided.