-
-
Notifications
You must be signed in to change notification settings - Fork 20
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #191 from nyx-space/189-mean-motion-based-propagat…
…ion-for-n-objects-in-parallel Mean motion based propagation from Python
- Loading branch information
Showing
17 changed files
with
570 additions
and
68 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
name: Daily Workflow | ||
|
||
on: | ||
schedule: | ||
- cron: '0 0 * * *' # Run at midnight every day | ||
|
||
jobs: | ||
full-coverage: | ||
name: Unit test and integration test coverage analysis | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
|
||
- name: Install stable toolchain | ||
uses: dtolnay/rust-toolchain@master | ||
with: | ||
toolchain: stable | ||
components: rustfmt, clippy | ||
|
||
- name: Install cargo-grcov | ||
run: | | ||
rustup component add llvm-tools-preview | ||
cargo install grcov | ||
- name: Generate coverage report for unit tests | ||
env: | ||
RUSTFLAGS: "-Cinstrument-coverage" | ||
LLVM_PROFILE_FILE: "target/coverage/nyx_space-%p-%m.profraw" | ||
run: | | ||
cargo test --lib | ||
grcov . --binary-path ./target/debug/ -t lcov -s . --keep-only 'src/*' > lcov-lib.txt | ||
- name: Generate coverage report for doc tests | ||
env: | ||
RUSTFLAGS: "-Cinstrument-coverage" | ||
LLVM_PROFILE_FILE: "target/coverage/nyx_space-%p-%m.profraw" | ||
run: | | ||
cargo test --doc | ||
grcov . --binary-path ./target/debug/ -t lcov -s . --keep-only 'src/*' > lcov-lib.txt | ||
- name: Generate coverage report for cosmic integr. tests | ||
env: | ||
RUSTFLAGS: "-Cinstrument-coverage" | ||
LLVM_PROFILE_FILE: "target/coverage/nyx_space-%p-%m.profraw" | ||
run: | | ||
cargo test -- cosmic mission_design orbit_determination propulsion test_monte_carlo_epoch | ||
grcov . --binary-path ./target/debug/ -t lcov -s . --keep-only 'src/*' > lcov-cosmic.txt | ||
- name: Generate coverage report for mission_design integr. tests | ||
env: | ||
RUSTFLAGS: "-Cinstrument-coverage" | ||
LLVM_PROFILE_FILE: "target/coverage/nyx_space-%p-%m.profraw" | ||
run: | | ||
cargo test -- cosmic mission_design orbit_determination propulsion test_monte_carlo_epoch | ||
grcov . --binary-path ./target/debug/ -t lcov -s . --keep-only 'src/*' > lcov-mission_design.txt | ||
- name: Generate coverage report for OD integr. tests | ||
env: | ||
RUSTFLAGS: "-Cinstrument-coverage" | ||
LLVM_PROFILE_FILE: "target/coverage/nyx_space-%p-%m.profraw" | ||
run: | | ||
cargo test -- orbit_determination | ||
grcov . --binary-path ./target/debug/ -t lcov -s . --keep-only 'src/*' > lcov-od.txt | ||
- name: Generate coverage report for propulsion integr. tests | ||
env: | ||
RUSTFLAGS: "-Cinstrument-coverage" | ||
LLVM_PROFILE_FILE: "target/coverage/nyx_space-%p-%m.profraw" | ||
run: | | ||
cargo test -- propulsion | ||
grcov . --binary-path ./target/debug/ -t lcov -s . --keep-only 'src/*' > lcov-prop.txt | ||
- name: Generate coverage report for monte carlo integr. tests | ||
env: | ||
RUSTFLAGS: "-Cinstrument-coverage" | ||
LLVM_PROFILE_FILE: "target/coverage/nyx_space-%p-%m.profraw" | ||
run: | | ||
cargo test -- test_monte_carlo_epoch | ||
grcov . --binary-path ./target/debug/ -t lcov -s . --keep-only 'src/*' > lcov-mc.txt | ||
- name: Upload coverage report | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
token: ${{ secrets.CODECOV_TOKEN }} | ||
files: ./lcov-*.txt |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,3 @@ | ||
# This file is autogenerated by maturin v0.14.16 | ||
# To update, run | ||
# | ||
# maturin generate-ci --pytest -o .github/workflows/python.yml github | ||
# | ||
name: Python | ||
on: | ||
push: | ||
|
@@ -22,12 +17,12 @@ jobs: | |
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
target: [x86_64, x86, aarch64] | ||
target: [x86_64] | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.10" | ||
python-version: "3.11" | ||
|
||
- name: Build wheels | ||
uses: PyO3/maturin-action@v1 | ||
|
@@ -45,29 +40,13 @@ jobs: | |
|
||
- name: pytest x86_64 | ||
if: ${{ matrix.target == 'x86_64' }} | ||
shell: bash | ||
run: | | ||
set -e | ||
pip install nyx_space --find-links dist --force-reinstall | ||
ls -lh dist | ||
pip install nyx_space --find-links dist --force-reinstall -v --no-cache-dir | ||
pip install pytest numpy pandas plotly pyarrow scipy | ||
pytest | ||
- name: pytest | ||
if: ${{ !startsWith(matrix.target, 'x86') && matrix.target != 'ppc64' && matrix.target != 'aarch64' }} | ||
uses: uraimo/[email protected] | ||
with: | ||
arch: ${{ matrix.target }} | ||
distro: ubuntu22.04 | ||
githubToken: ${{ github.token }} | ||
install: | | ||
apt-get update | ||
apt-get install -y --no-install-recommends python3 python3-pip python3-numpy python3-dev python3-pandas python-pyarrow python3-scipy | ||
pip3 install -U pip pytest plotly | ||
run: | | ||
set -e | ||
pip3 install nyx_space --find-links dist --force-reinstall | ||
pytest | ||
- name: Upload python tests HTMLs | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
|
@@ -83,7 +62,7 @@ jobs: | |
- uses: actions/checkout@v3 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.10" | ||
python-version: "3.11" | ||
architecture: ${{ matrix.target }} | ||
- name: Build wheels | ||
uses: PyO3/maturin-action@v1 | ||
|
@@ -96,12 +75,13 @@ jobs: | |
with: | ||
name: wheels | ||
path: dist | ||
|
||
- name: pytest | ||
if: ${{ !startsWith(matrix.target, 'aarch64') }} | ||
shell: bash | ||
run: | | ||
set -e | ||
pip install nyx_space --find-links dist --force-reinstall | ||
ls -lh dist | ||
pip install --find-links dist --force-reinstall nyx_space | ||
pip install pytest numpy pandas plotly pyarrow | ||
pytest | ||
|
@@ -114,24 +94,27 @@ jobs: | |
- uses: actions/checkout@v3 | ||
- uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.10" | ||
python-version: "3.11" | ||
- name: Build wheels | ||
uses: PyO3/maturin-action@v1 | ||
with: | ||
target: ${{ matrix.target }} | ||
args: --release --out dist --find-interpreter -F python | ||
sccache: 'true' | ||
|
||
- name: Upload wheels | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: wheels | ||
path: dist | ||
|
||
- name: pytest | ||
if: ${{ !startsWith(matrix.target, 'aarch64') }} | ||
shell: bash | ||
run: | | ||
set -e | ||
pip install nyx_space --find-links dist --force-reinstall | ||
ls -lh dist | ||
pip install --find-links dist --force-reinstall nyx_space | ||
pip install pytest numpy pandas plotly pyarrow | ||
pytest | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
[package] | ||
name = "nyx-space" | ||
build = "build.rs" | ||
version = "2.0.0-alpha.2" | ||
version = "2.0.0-beta-dev" | ||
edition = "2021" | ||
authors = ["Christopher Rabotin <[email protected]>"] | ||
description = "A high-fidelity space mission toolkit, with orbit propagation, estimation and some systems engineering" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.