Skip to content

feat: add StateBuilder #949

feat: add StateBuilder

feat: add StateBuilder #949

Workflow file for this run

# Apache License 2.0
name: Build and Test
on:
push:
branches:
- main
pull_request:
concurrency:
group: main-${{ github.ref }}
cancel-in-progress: true
env:
PROJECT_NAME: open-space-toolkit-astrodynamics
jobs:
prepare-environment:
name: Prepare Environment Variables
runs-on: ubuntu-latest
outputs:
project_name: ${{ steps.project-name.outputs.value }}
project_version: ${{ steps.project-version.outputs.value }}
steps:
- name: Checkout Repository
uses: actions/checkout@v3
with:
fetch-depth: 0
lfs: true
- id: project-name
name: Get Project Name
run: |
echo "Project name: ${{ env.PROJECT_NAME }}"
echo "value=${{ env.PROJECT_NAME }}" >> $GITHUB_OUTPUT
- id: project-version
name: Get Project Version
run: |
project_version=$(git describe --tags --always)
echo "Project version: ${project_version}"
echo "value=${project_version}" >> $GITHUB_OUTPUT
build-and-test:
name: Build & Test
needs:
- prepare-environment
uses: open-space-collective/open-space-toolkit/.github/workflows/build-test.yml@main
with:
project_name: ${{ needs.prepare-environment.outputs.project_name }}
project_version: ${{ needs.prepare-environment.outputs.project_version }}
secrets: inherit
benchmark-cpp:
name: Benchmark C++
runs-on: ubuntu-latest
needs:
- prepare-environment
- build-and-test
steps:
- name: Checkout Repository
uses: actions/checkout@v3
with:
fetch-depth: 0
lfs: true
- name: Login to DockerHub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Pull Development Image
run: docker pull openspacecollective/${{ needs.prepare-environment.outputs.project_name }}-development:${{ needs.prepare-environment.outputs.project_version }}
- name: Run C++ Benchmark
run: make benchmark-cpp-standalone
- name: Download previous benchmark
uses: actions/cache@v1
with:
path: ./cache
key: ${{ runner.os }}-benchmark
- uses: benchmark-action/github-action-benchmark@v1
with:
tool: 'googlecpp'
output-file-path: bin/benchmark_result.json
github-token: ${{ secrets.GITHUB_TOKEN }}
auto-push: ${{ github.ref == 'refs/heads/main' }}
alert-threshold: "200%"
comment-on-alert: true