Skip to content

Commit 3f2bf93

Browse files
committed
ci: port Rust build and test to GitHub Actions
1 parent 232160f commit 3f2bf93

File tree

6 files changed

+63
-83
lines changed

6 files changed

+63
-83
lines changed

.github/workflows/pyoxidizer.yml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
on:
2+
- push
3+
- pull_request
4+
jobs:
5+
pyoxidizer:
6+
strategy:
7+
matrix:
8+
rust_toolchain:
9+
- 'stable'
10+
- 'beta'
11+
- 'nightly'
12+
# Remember to update MINIMUM_RUST_VERSION in pyoxidizer/src/environment.rs
13+
# and the `Installing Rust` documentation when this changes.
14+
- '1.45.0'
15+
os:
16+
- 'ubuntu-18.04'
17+
- 'macos-10.15'
18+
- 'windows-2019'
19+
continue-on-error: true
20+
runs-on: ${{ matrix.os }}
21+
env:
22+
IN_CI: '1'
23+
steps:
24+
- name: Install Linux system packages
25+
if: ${{ matrix.os == 'ubuntu-18.04' }}
26+
run: |
27+
sudo apt-get install -y libyaml-dev snapcraft
28+
29+
- uses: actions/checkout@v2
30+
with:
31+
# Needed by build.rs, which needs to walk the Git history to find the
32+
# root commit. Without this, a shallow clone (depth=1) is performed.
33+
fetch_depth: 0
34+
35+
- uses: actions-rs/toolchain@v1
36+
with:
37+
toolchain: ${{ matrix.rust_toolchain }}
38+
profile: minimal
39+
40+
- uses: actions/setup-python@v2
41+
with:
42+
python-version: '3.8'
43+
44+
- name: Build Workspace
45+
run: |
46+
cargo build --workspace --exclude oxidized-importer
47+
cargo run --bin pyoxidizer -- --version
48+
49+
# TODO get pyembed working. It is complaining about a missing libpython.
50+
- name: Test Workspace
51+
run: |
52+
cargo test --workspace --exclude pyembed --exclude oxidized-importer
53+
54+
- name: Run Clippy
55+
if: ${{ matrix.rust_toolchain == 'stable' || matrix.rust_toolchain == 'beta' }}
56+
run: |
57+
cargo clippy --workspace --exclude oxdized_importer

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# PyOxidizer
22

3-
[![Build Status](https://dev.azure.com/gregoryszorc/PyOxidizer/_apis/build/status/indygreg.PyOxidizer?branchName=main)](https://dev.azure.com/gregoryszorc/PyOxidizer/_build/latest?definitionId=1&branchName=main)
3+
[![Build Status](https://github.com/indygreg/PyOxidizer/workflows/.github/workflows/pyoxidizer.yml/badge.svg)](https://github.com/indygreg/PyOxidizer/actions)
44

55
`PyOxidizer` is a utility for producing binaries that embed Python.
66
The over-arching goal of `PyOxidizer` is to make complex packaging and

ci/azure-pipelines-template.yml

Lines changed: 0 additions & 62 deletions
This file was deleted.

ci/azure-pipelines.yml

Lines changed: 0 additions & 15 deletions
This file was deleted.

ci/install-rust-linux.sh

Lines changed: 0 additions & 5 deletions
This file was deleted.

docs/history.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,11 @@ New Features
6161
method to obtain a ``WiXBundleBuilder``, which can be used to generate an
6262
``.exe`` installer for the application.
6363

64+
Other Relevant Changes
65+
^^^^^^^^^^^^^^^^^^^^^^
66+
67+
* CI has been moved from Azure Pipelines to GitHub Actions.
68+
6469
.. _version_0_10_3:
6570

6671
0.10.3

0 commit comments

Comments
 (0)