Skip to content

Commit

Permalink
Merge pull request #1 from conda-forge/master
Browse files Browse the repository at this point in the history
Update with main
  • Loading branch information
Jhsmit authored Jan 17, 2021
2 parents 4cf59ea + e94e097 commit 533579e
Show file tree
Hide file tree
Showing 17 changed files with 260 additions and 598 deletions.
34 changes: 0 additions & 34 deletions .azure-pipelines/azure-pipelines-feedstock-creation.yml

This file was deleted.

156 changes: 149 additions & 7 deletions .azure-pipelines/azure-pipelines-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,6 @@ jobs:
condition: not(eq(variables['Build.SourceBranch'], 'refs/heads/master'))
pool:
vmImage: ubuntu-16.04
strategy:
maxParallel: 8
matrix:
linux:
CONFIG: linux64
IMAGE_NAME: condaforge/linux-anvil-comp7
AZURE: True
timeoutInMinutes: 360
steps:
- script: |
Expand All @@ -24,8 +17,157 @@ jobs:
mkdir -p build_artifacts/linux-64/
export CI=azure
export CONFIG=linux64
export IMAGE_NAME=quay.io/condaforge/linux-anvil-comp7
export AZURE=True
.scripts/run_docker_build.sh
displayName: Run docker build
name: linux_64_build
- publish: build_artifacts/linux-64/
artifact: conda_pkgs_linux

- job: linux_64_cuda_92
dependsOn: linux_64
condition: and(not(eq(variables['Build.SourceBranch'], 'refs/heads/master')), eq(dependencies.linux_64.outputs['linux_64_build.NEED_CUDA'], '1'))
pool:
vmImage: ubuntu-16.04
timeoutInMinutes: 360
steps:
- script: |
# sudo pip install --upgrade pip
sudo pip install setuptools shyaml
displayName: Install dependencies
- script: |
set -e
# make sure there is a package directory so that artifact publishing works
mkdir -p build_artifacts/linux-64/
export CI=azure
export CONFIG=linux64
export IMAGE_NAME=quay.io/condaforge/linux-anvil-cuda:9.2
export AZURE=True
export CF_CUDA_VERSION="9.2"
.scripts/run_docker_build.sh
displayName: Run docker build for CUDA 9.2
- publish: build_artifacts/linux-64/
artifact: conda_pkgs_linux_64_cuda_92

- job: linux_64_cuda_100
dependsOn: linux_64
condition: and(not(eq(variables['Build.SourceBranch'], 'refs/heads/master')), eq(dependencies.linux_64.outputs['linux_64_build.NEED_CUDA'], '1'))
pool:
vmImage: ubuntu-16.04
timeoutInMinutes: 360
steps:
- script: |
# sudo pip install --upgrade pip
sudo pip install setuptools shyaml
displayName: Install dependencies
- script: |
set -e
# make sure there is a package directory so that artifact publishing works
mkdir -p build_artifacts/linux-64/
export CI=azure
export CONFIG=linux64
export IMAGE_NAME=quay.io/condaforge/linux-anvil-cuda:10.0
export AZURE=True
export CF_CUDA_VERSION="10.0"
.scripts/run_docker_build.sh
displayName: Run docker build for CUDA 10.0
- publish: build_artifacts/linux-64/
artifact: conda_pkgs_linux_64_cuda_100

- job: linux_64_cuda_101
dependsOn: linux_64
condition: and(not(eq(variables['Build.SourceBranch'], 'refs/heads/master')), eq(dependencies.linux_64.outputs['linux_64_build.NEED_CUDA'], '1'))
pool:
vmImage: ubuntu-16.04
timeoutInMinutes: 360
steps:
- script: |
# sudo pip install --upgrade pip
sudo pip install setuptools shyaml
displayName: Install dependencies
- script: |
set -e
# make sure there is a package directory so that artifact publishing works
mkdir -p build_artifacts/linux-64/
export CI=azure
export CONFIG=linux64
export IMAGE_NAME=quay.io/condaforge/linux-anvil-cuda:10.1
export AZURE=True
export CF_CUDA_VERSION="10.1"
.scripts/run_docker_build.sh
displayName: Run docker build for CUDA 10.1
- publish: build_artifacts/linux-64/
artifact: conda_pkgs_linux_64_cuda_101

- job: linux_64_cuda_102
dependsOn: linux_64
condition: and(not(eq(variables['Build.SourceBranch'], 'refs/heads/master')), eq(dependencies.linux_64.outputs['linux_64_build.NEED_CUDA'], '1'))
pool:
vmImage: ubuntu-16.04
timeoutInMinutes: 360
steps:
- script: |
# sudo pip install --upgrade pip
sudo pip install setuptools shyaml
displayName: Install dependencies
- script: |
set -e
# make sure there is a package directory so that artifact publishing works
mkdir -p build_artifacts/linux-64/
export CI=azure
export CONFIG=linux64
export IMAGE_NAME=quay.io/condaforge/linux-anvil-cuda:10.2
export AZURE=True
export CF_CUDA_VERSION="10.2"
.scripts/run_docker_build.sh
displayName: Run docker build for CUDA 10.2
- publish: build_artifacts/linux-64/
artifact: conda_pkgs_linux_64_cuda102

- job: linux_64_centos7
dependsOn: linux_64
condition: and(not(eq(variables['Build.SourceBranch'], 'refs/heads/master')), eq(dependencies.linux_64.outputs['linux_64_build.NEED_CENTOS7'], '1'))
pool:
vmImage: ubuntu-16.04
timeoutInMinutes: 360
steps:
- script: |
# sudo pip install --upgrade pip
sudo pip install setuptools shyaml
displayName: Install dependencies
- script: |
set -e
# make sure there is a package directory so that artifact publishing works
mkdir -p build_artifacts/linux-64/
export CI=azure
export CONFIG=linux64
export IMAGE_NAME=quay.io/condaforge/linux-anvil-cos7-x86_64
export AZURE=True
.scripts/run_docker_build.sh
displayName: Run docker build for centos 7
- publish: build_artifacts/linux-64/
artifact: conda_pkgs_linux_64_centos7

15 changes: 15 additions & 0 deletions .ci_support/build_all.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,21 @@ def build_all(recipes_dir, arch):
print("Found no recipes to build")
return

found_cuda = False
found_centos7 = False
for folder in folders:
meta_yaml = os.path.join(recipes_dir, folder, "meta.yaml")
if os.path.exists(meta_yaml):
with(open(meta_yaml, "r")) as f:
text = ''.join(f.readlines())
if 'cuda' in text:
found_cuda = True
if 'sysroot_linux-64' in text:
found_centos7 = True
if found_cuda:
print('##vso[task.setvariable variable=NEED_CUDA;isOutput=true]1')
if found_centos7:
print('##vso[task.setvariable variable=NEED_CENTOS7;isOutput=true]1')
for folder in folders:
built = False
cbc = os.path.join(recipes_dir, folder, "conda_build_config.yaml")
Expand Down
8 changes: 7 additions & 1 deletion .ci_support/linux64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,10 @@ fortran_compiler:
channel_sources:
- conda-forge,defaults
docker_image:
- condaforge/linux-anvil-comp7
- quay.io/condaforge/linux-anvil-comp7
cuda_compiler_version:
- None # [os.environ.get('CF_CUDA_VERSION', 'None') == 'None']
- 9.2 # [os.environ.get('CF_CUDA_VERSION', 'None') == '9.2']
- 10.0 # [os.environ.get('CF_CUDA_VERSION', 'None') == '10.0']
- 10.1 # [os.environ.get('CF_CUDA_VERSION', 'None') == '10.1']
- 10.2 # [os.environ.get('CF_CUDA_VERSION', 'None') == '10.2']
1 change: 1 addition & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,4 @@ Checklist
- [ ] Build number is 0
- [ ] A tarball (`url`) rather than a repo (e.g. `git_url`) is used in your recipe (see [here](https://conda-forge.org/docs/maintainer/adding_pkgs.html#build-from-tarballs-not-repos) for more details)
- [ ] GitHub users listed in the maintainer section have posted a comment confirming they are willing to be listed there
- [ ] When in trouble, please check our [knowledge base documentation](https://conda-forge.org/docs/maintainer/knowledge_base.html) before pinging a team.
55 changes: 55 additions & 0 deletions .github/workflows/create_feedstocks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Create feedstocks

on:
push:
branches:
- master
schedule:
- cron: '*/5 * * * *'

jobs:
create-feedstocks:
if: github.repository == 'conda-forge/staged-recipes'
name: Create feedstocks
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Prevent multiple jobs running in parallel
id: conversion_lock
uses: softprops/turnstyle@v1
with:
abort-after-seconds: 3
poll-interval-seconds: 2
continue-on-error: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Run feedstock creation
# outcome is evaluated before continue-on-error above
if: ${{ steps.conversion_lock.outcome == 'success' }}
run: |
# Avoid wasting CI time if there are no recipes ready for conversion
if [ "$(ls recipes/*/meta.yaml | grep -v recipes/example/meta.yaml --count)" -eq 0 ]; then
echo "No new recipes found, exiting..."
exit 0
fi
echo "Creating feedstocks from the recipe(s)."
git config --global user.name "GitHub Actions on github.com/conda-forge/staged-recipes"
git config --global user.email "[email protected]"
source ./.travis_scripts/create_feedstocks
env:
PROD_BINSTAR_TOKEN: ${{ secrets.PROD_BINSTAR_TOKEN }}
STAGING_BINSTAR_TOKEN: ${{ secrets.STAGING_BINSTAR_TOKEN }}
GH_TOKEN: ${{ secrets.GH_TOKEN }}
CIRCLE_TOKEN: ${{ secrets.CIRCLE_TOKEN }}
TRAVIS_TOKEN: ${{ secrets.TRAVIS_TOKEN }}
GH_TRAVIS_TOKEN: ${{ secrets.GH_TRAVIS_TOKEN }}
AZURE_TOKEN: ${{ secrets.AZURE_TOKEN }}
DRONE_TOKEN: ${{ secrets.DRONE_TOKEN }}
GH_DRONE_TOKEN: ${{ secrets.GH_DRONE_TOKEN }}
7 changes: 4 additions & 3 deletions .scripts/run_docker_build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ fi
if [ -z "${IMAGE_NAME}" ]; then
SHYAML_INSTALLED="$(shyaml -h || echo NO)"
if [ "${SHYAML_INSTALLED}" == "NO" ]; then
echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Falling back to condaforge/linux-anvil-comp7"
IMAGE_NAME="condaforge/linux-anvil-comp7"
echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Falling back to quay.io/condaforge/linux-anvil-comp7"
IMAGE_NAME="quay.io/condaforge/linux-anvil-comp7"
else
IMAGE_NAME="$(cat "${REPO_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 condaforge/linux-anvil-comp7 )"
IMAGE_NAME="$(cat "${REPO_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 quay.io/condaforge/linux-anvil-comp7 )"
fi
fi

Expand All @@ -46,6 +46,7 @@ docker run ${DOCKER_RUN_ARGS} \
-e AZURE=${AZURE} \
-e CONFIG \
-e CI \
-e CF_CUDA_VERSION \
$IMAGE_NAME \
bash \
/home/conda/staged-recipes/${PROVIDER_DIR}/build_steps.sh
Expand Down
53 changes: 0 additions & 53 deletions .travis.yml

This file was deleted.

Loading

0 comments on commit 533579e

Please sign in to comment.