Skip to content

Remove openssl from flake #1125

Remove openssl from flake

Remove openssl from flake #1125

Workflow file for this run

name: CI
# Controls when the workflow will run.
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
windows-cargo-tests:
# The type of runner that the job will run on.
runs-on: windows-latest
steps:
- uses: actions/checkout@v3.5.3
with:
fetch-depth: 0
- name: Compile on windows
run: cargo build --all
- name: Test on windows
run: cargo test --all
cargo-tests:
# The type of runner that the job will run on.
runs-on: ubuntu-22.04
strategy:
matrix:
# Which OS versions we will test on.
os_version: [ 20.04, 22.04 ]
steps:
- uses: actions/checkout@v3.5.3
with:
fetch-depth: 0
- uses: docker/setup-buildx-action@v2
- uses: docker/build-push-action@v4
with:
context: .
file: ./deployment-examples/docker-compose/Dockerfile
build-args: |
OS_VERSION=${{ matrix.os_version }}
load: true # This brings the build into `docker images` from buildx.
tags: trace_machina/native-link:dependencies
target: dependencies
- name: Create container for cargo
run: |
docker run --name=native-link-cargo trace_machina/native-link:dependencies bash -c ' \
DEBIAN_FRONTEND=noninteractive apt-get install -y curl libssl-dev gcc pkg-config python3 && \
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain=1.70.0 \
' && \
docker commit native-link-cargo trace_machina/native-link:cargo
- name: Check Cargo.toml is up to date
run: |
docker run --rm -w /root/native-link -v $PWD:/root/native-link trace_machina/native-link:cargo python3 ./tools/build_cargo_manifest.py && \
git diff --exit-code || \
(echo "Cargo.toml is out of date. Please run: python ./tools/build_cargo_manifest.py" && exit 1)
- name: Compile & test with cargo
run: |
docker run --rm -w /root/native-link -v $PWD:/root/native-link trace_machina/native-link:cargo bash -c ' \
. /root/.cargo/env && \
cargo build --all && \
cargo test --all \
'
docker-compose-compiles-native-link:
# The type of runner that the job will run on.
runs-on: ubuntu-22.04
strategy:
matrix:
# Which OS versions we will test on.
os_version: [ 20.04, 22.04 ]
steps:
- uses: actions/checkout@v3.5.3
with:
fetch-depth: 0
- uses: docker/setup-buildx-action@v2
- uses: docker/build-push-action@v4
with:
context: .
file: ./deployment-examples/docker-compose/Dockerfile
build-args: |
OPT_LEVEL=opt
OS_VERSION=${{ matrix.os_version }}
ADDITIONAL_SETUP_WORKER_CMD=DEBIAN_FRONTEND=noninteractive apt-get install -y gcc g++ lld pkg-config python3
load: true # This brings the build into `docker images` from buildx.
tags: trace_machina/native-link:latest
- uses: docker/build-push-action@v4
with:
context: .
file: ./deployment-examples/docker-compose/Dockerfile
build-args: |
OPT_LEVEL=opt
OS_VERSION=${{ matrix.os_version }}
load: true # This brings the build into `docker images` from buildx.
tags: trace_machina/native-link:builder
target: builder
- name: Compile Native Link with Native Link
run: |
mkdir -p ~/.cache && \
cd deployment-examples/docker-compose && \
docker-compose up -d && \
cd ../../ && \
docker run --rm --net=host -w /root/native-link -v $PWD:/root/native-link trace_machina/native-link:builder sh -c ' \
bazel clean && \
bazel test //... \
--remote_instance_name=main \
--remote_cache=grpc://127.0.0.1:50051 \
--remote_executor=grpc://127.0.0.1:50052 \
--remote_default_exec_properties=cpu_count=1 \
' && \
docker run --rm --net=host -w /root/native-link -v $PWD:/root/native-link trace_machina/native-link:builder sh -c ' \
bazel clean && \
bazel test //... \
--remote_instance_name=main \
--remote_cache=grpc://127.0.0.1:50051 \
--remote_executor=grpc://127.0.0.1:50052 \
--remote_default_exec_properties=cpu_count=1 \
' 2>&1 | ( ! grep ' PASSED in ' ) # If we get PASSED without (cache) it means there's a cache issue.
integration-tests:
runs-on: ubuntu-22.04
strategy:
matrix:
# Which OS versions we will test on.
os_version: [ 20.04, 22.04 ]
steps:
- uses: actions/checkout@v3.5.3
with:
fetch-depth: 0
- uses: docker/setup-buildx-action@v2
- uses: docker/build-push-action@v4
with:
context: .
file: ./deployment-examples/docker-compose/Dockerfile
build-args: |
OPT_LEVEL=fastbuild
OS_VERSION=${{ matrix.os_version }}
load: true # This brings the build into `docker images` from buildx.
tags: trace_machina/native-link:latest
- name: Run tests
run: ./run_integration_tests.sh