-
Notifications
You must be signed in to change notification settings - Fork 2
126 lines (115 loc) · 4.15 KB
/
conda-build.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# This file was generated automatically from conda-smithy. To update this configuration,
# update the conda-forge.yml and/or the recipe/meta.yaml.
# -*- mode: yaml -*-
name: Build conda package
on:
push:
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
jobs:
build:
name: ${{ matrix.CONFIG }}
runs-on: ${{ matrix.runs_on }}
timeout-minutes: 360
strategy:
fail-fast: false
matrix:
include:
- CONFIG: osx_64_numpy1.23python3.11.____cpython
UPLOAD_PACKAGES: True
os: macos
runs_on: ('macos-latest',)
- CONFIG: osx_arm64_numpy1.23python3.11.____cpython
UPLOAD_PACKAGES: True
os: macos
runs_on: ('macos-latest',)
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Build on Linux
if: matrix.os == 'ubuntu'
env:
CONFIG: ${{ matrix.CONFIG }}
UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }}
DOCKER_IMAGE: ${{ matrix.DOCKER_IMAGE }}
CI: github_actions
CONDA_FORGE_DOCKER_RUN_ARGS: "${{ matrix.CONDA_FORGE_DOCKER_RUN_ARGS }}"
BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }}
FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }}
STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }}
shell: bash
run: |
echo "::group::Configure binfmt_misc"
docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes
export flow_run_id="github_$GITHUB_RUN_ID"
export remote_url="https://github.com/$GITHUB_REPOSITORY"
export sha="$GITHUB_SHA"
export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)"
export GIT_BRANCH="$(basename $GITHUB_REF)"
if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then
export IS_PR_BUILD="True"
else
export IS_PR_BUILD="False"
fi
echo "::endgroup::"
./.scripts/run_docker_build.sh
- name: Build on macOS
if: matrix.os == 'macos'
env:
CONFIG: ${{ matrix.CONFIG }}
UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }}
CI: github_actions
BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }}
FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }}
STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }}
shell: bash
run: |
export flow_run_id="github_$GITHUB_RUN_ID"
export remote_url="https://github.com/$GITHUB_REPOSITORY"
export sha="$GITHUB_SHA"
export FEEDSTOCK_NAME="$(basename $GITHUB_REPOSITORY)"
export GIT_BRANCH="$(basename $GITHUB_REF)"
if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then
export IS_PR_BUILD="True"
else
export IS_PR_BUILD="False"
fi
./.scripts/run_osx_build.sh
- name: Install Miniconda for windows
uses: conda-incubator/setup-miniconda@v2
with:
miniforge-version: latest
miniforge-variant: Mambaforge
if: matrix.os == 'windows'
- name: Build on windows
shell: cmd
run: |
set "flow_run_id=github_%GITHUB_RUN_ID%"
set "remote_url=https://github.com/%GITHUB_REPOSITORY%"
set "sha=%GITHUB_SHA%"
call ".scripts\run_win_build.bat"
env:
PYTHONUNBUFFERED: 1
CONFIG: ${{ matrix.CONFIG }}
CI: github_actions
UPLOAD_PACKAGES: ${{ matrix.UPLOAD_PACKAGES }}
BINSTAR_TOKEN: ${{ secrets.BINSTAR_TOKEN }}
FEEDSTOCK_TOKEN: ${{ secrets.FEEDSTOCK_TOKEN }}
STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }}
if: matrix.os == 'windows'
- name: Upload artifacts to Github
uses: actions/upload-artifact@v2
with:
path: build_artifacts/pypi_wheels
name: ${{ matrix.CONFIG }}
- name: Upload artifacts to Github release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: build_artifacts/pypi_wheels/*.whl
tag: ${{ github.ref }}
overwrite: true
file_glob: true
if: startsWith(github.ref, 'refs/tags/')