Skip to content

Commit

Permalink
Merge pull request #7 from dpryan79/rebuild
Browse files Browse the repository at this point in the history
Rebuild for gcc7 and so on, bump version
  • Loading branch information
bgruening authored Jan 21, 2019
2 parents e98556a + 3023203 commit d30fa79
Show file tree
Hide file tree
Showing 24 changed files with 478 additions and 147 deletions.
31 changes: 31 additions & 0 deletions .azure-pipelines/azure-pipelines-linux.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# 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 -*-

jobs:
- job: linux_64
pool:
vmImage: ubuntu-16.04
timeoutInMinutes: 240
strategy:
maxParallel: 8
matrix:
linux_:
CONFIG: linux_
UPLOAD_PACKAGES: False
steps:
- script: |
sudo pip install --upgrade pip
sudo pip install setuptools shyaml
displayName: Install dependencies
# configure qemu binfmt-misc running. This allows us to run docker containers
# embedded qemu-static
- script: |
docker run --rm --privileged multiarch/qemu-user-static:register
ls /proc/sys/fs/binfmt_misc/
condition: not(startsWith(variables['CONFIG'], 'linux_64'))
displayName: Configure binfmt_misc
- script: .azure-pipelines/run_docker_build.sh
displayName: Run docker build
84 changes: 84 additions & 0 deletions .azure-pipelines/azure-pipelines-osx.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
# 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 -*-

jobs:
- job: osx_64
pool:
vmImage: macOS-10.13
timeoutInMinutes: 240
strategy:
maxParallel: 8
matrix:
osx_:
CONFIG: osx_
UPLOAD_PACKAGES: False

steps:
# TODO: Fast finish on azure pipelines?
- script: |
echo "Fast Finish"
- script: |
echo "Removing homebrew from Azure to avoid conflicts."
curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall > ~/uninstall_homebrew
chmod +x ~/uninstall_homebrew
~/uninstall_homebrew -fq
rm ~/uninstall_homebrew
displayName: Remove homebrew
- script: |
echo "Installing Miniconda"
set -x -e
curl -o $(Build.StagingDirectory)/miniconda.sh https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
chmod +x $(Build.StagingDirectory)/miniconda.sh
$(Build.StagingDirectory)/miniconda.sh -b -p $(Build.StagingDirectory)/miniconda
export PATH=$(Build.StagingDirectory)/miniconda/bin:$PATH
echo "Setting up Conda environment"
displayName: 'Install miniconda'
- script: |
export PATH=$(Build.StagingDirectory)/miniconda/bin:$PATH
set -x -e
conda install -n base -c conda-forge --quiet --yes conda-forge-ci-setup=2 conda-build
displayName: 'Add conda-forge-ci-setup=2'
- script: |
set -x -e
export PATH=$(Build.StagingDirectory)/miniconda/bin:$PATH
echo "Configuring conda."
setup_conda_rc ./ ./recipe ./.ci_support/${CONFIG}.yaml
source run_conda_forge_build_setup
conda update --yes --quiet --override-channels -c conda-forge -c defaults --all
env: {
OSX_FORCE_SDK_DOWNLOAD: "1"
}
displayName: Configure conda and conda-build
- script: |
export PATH=$(Build.StagingDirectory)/miniconda/bin:$PATH
set -x -e
mangle_compiler ./ ./recipe ./.ci_support/${CONFIG}.yaml
displayName: Mangle compiler
- script: |
export PATH=$(Build.StagingDirectory)/miniconda/bin:$PATH
set -x -e
make_build_number ./ ./recipe ./.ci_support/${CONFIG}.yaml
displayName: Generate build number clobber file
- script: |
export PATH=$(Build.StagingDirectory)/miniconda/bin:$PATH
set -x -e
conda build ./recipe -m ./.ci_support/${CONFIG}.yaml --clobber-file ./.ci_support/clobber_${CONFIG}.yaml
displayName: Build recipe
- script: |
export PATH=$(Build.StagingDirectory)/miniconda/bin:$PATH
set -x -e
upload_package ./ ./recipe ./.ci_support/${CONFIG}.yaml
displayName: Upload recipe
condition: not(eq(variables['UPLOAD_PACKAGES'], 'False'))
38 changes: 38 additions & 0 deletions .azure-pipelines/build_steps.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
#!/usr/bin/env bash

# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here
# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent
# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also
# benefit from the improvement.

set -xeuo pipefail
export PYTHONUNBUFFERED=1
export FEEDSTOCK_ROOT=/home/conda/feedstock_root
export RECIPE_ROOT=/home/conda/recipe_root
export CI_SUPPORT=/home/conda/feedstock_root/.ci_support
export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml"

cat >~/.condarc <<CONDARC
conda-build:
root-dir: /home/conda/feedstock_root/build_artifacts
CONDARC

conda install --yes --quiet conda-forge-ci-setup=2 conda-build -c conda-forge

# set up the condarc
setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"

run_conda_forge_build_setup
# make the build number clobber
make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"

conda build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \
--clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml"

if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then
upload_package "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"
fi

touch "/home/conda/feedstock_root/build_artifacts/conda-forge-build-done-${CONFIG}"
57 changes: 57 additions & 0 deletions .azure-pipelines/run_docker_build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#!/usr/bin/env bash

# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here
# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent
# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also
# benefit from the improvement.

set -xeuo pipefail

THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )"
PROVIDER_DIR="$(basename $THISDIR)"

FEEDSTOCK_ROOT=$(cd "$(dirname "$0")/.."; pwd;)
RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe"

docker info

# In order for the conda-build process in the container to write to the mounted
# volumes, we need to run with the same id as the host machine, which is
# normally the owner of the mounted volumes, or at least has write permission
export HOST_USER_ID=$(id -u)
# Check if docker-machine is being used (normally on OSX) and get the uid from
# the VM
if hash docker-machine 2> /dev/null && docker-machine active > /dev/null; then
export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u)
fi

ARTIFACTS="$FEEDSTOCK_ROOT/build_artifacts"

if [ -z "$CONFIG" ]; then
echo "Need to set CONFIG env variable"
exit 1
fi

pip install shyaml
DOCKER_IMAGE=$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 condaforge/linux-anvil-comp7 )

mkdir -p "$ARTIFACTS"
DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}"
rm -f "$DONE_CANARY"
# Not all providers run with a real tty. Disable using one
DOCKER_RUN_ARGS=" "

export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}"
docker run ${DOCKER_RUN_ARGS} \
-v "${RECIPE_ROOT}":/home/conda/recipe_root:ro,z \
-v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z \
-e CONFIG \
-e BINSTAR_TOKEN \
-e HOST_USER_ID \
-e UPLOAD_PACKAGES \
$DOCKER_IMAGE \
bash \
/home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh

# verify that the end of the script was reached
test -f "$DONE_CANARY"
1 change: 1 addition & 0 deletions .ci_support/README
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
This file is automatically generated by conda-smithy. To change any matrix elements, you should change conda-smithy's input conda_build_config.yaml and re-render the recipe, rather than editing these files directly.
13 changes: 13 additions & 0 deletions .ci_support/linux_.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
c_compiler:
- gcc
channel_sources:
- conda-forge,defaults
channel_targets:
- conda-forge main
docker_image:
- condaforge/linux-anvil-comp7
pin_run_as_build:
r-base:
max_pin: x.x.x
r_base:
- 3.5.1
17 changes: 17 additions & 0 deletions .ci_support/osx_.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
MACOSX_DEPLOYMENT_TARGET:
- '10.9'
c_compiler:
- clang
channel_sources:
- conda-forge,defaults
channel_targets:
- conda-forge main
macos_machine:
- x86_64-apple-darwin13.4.0
macos_min_version:
- '10.9'
pin_run_as_build:
r-base:
max_pin: x.x.x
r_base:
- 3.5.1
39 changes: 39 additions & 0 deletions .circleci/build_steps.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#!/usr/bin/env bash

# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here
# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent
# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also
# benefit from the improvement.

set -xeuo pipefail
export PYTHONUNBUFFERED=1
export FEEDSTOCK_ROOT=/home/conda/feedstock_root
export RECIPE_ROOT=/home/conda/recipe_root
export CI_SUPPORT=/home/conda/feedstock_root/.ci_support
export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml"

cat >~/.condarc <<CONDARC
conda-build:
root-dir: /home/conda/feedstock_root/build_artifacts
CONDARC

conda install --yes --quiet conda-forge-ci-setup=2 conda-build -c conda-forge

# set up the condarc
setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"

source run_conda_forge_build_setup

# make the build number clobber
make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"

conda build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \
--clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml"

if [[ "${UPLOAD_PACKAGES}" != "False" ]]; then
upload_package "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"
fi

touch "/home/conda/feedstock_root/build_artifacts/conda-forge-build-done-${CONFIG}"
File renamed without changes.
44 changes: 11 additions & 33 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,52 +1,30 @@
# 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 -*-

version: 2

jobs:
build__CONDA_R_3.3.2:
working_directory: ~/test
machine: true
environment:
- CONDA_R: "3.3.2"
steps:
- checkout
- run:
name: Fast finish outdated PRs and merge PRs
command: |
./ci_support/fast_finish_ci_pr_build.sh
./ci_support/checkout_merge_commit.sh
- run:
command: docker pull condaforge/linux-anvil
- run:
name: Print conda-build environment variables
command: |
echo "CONDA_R=${CONDA_R}"
- run:
# Run, test and (if we have a BINSTAR_TOKEN) upload the distributions.
command: ./ci_support/run_docker_build.sh
build__CONDA_R_3.4.1:
build_linux_:
working_directory: ~/test
machine: true
environment:
- CONDA_R: "3.4.1"
- CONFIG: "linux_"
steps:
- checkout
- run:
name: Fast finish outdated PRs and merge PRs
command: |
./ci_support/fast_finish_ci_pr_build.sh
./ci_support/checkout_merge_commit.sh
./.circleci/fast_finish_ci_pr_build.sh
./.circleci/checkout_merge_commit.sh
- run:
command: docker pull condaforge/linux-anvil
- run:
name: Print conda-build environment variables
command: |
echo "CONDA_R=${CONDA_R}"
command: docker pull condaforge/linux-anvil-comp7
- run:
# Run, test and (if we have a BINSTAR_TOKEN) upload the distributions.
command: ./ci_support/run_docker_build.sh
command: ./.circleci/run_docker_build.sh

workflows:
version: 2
build_and_test:
jobs:
- build__CONDA_R_3.3.2
- build__CONDA_R_3.4.1
- build_linux_
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash

curl https://raw.githubusercontent.com/conda-forge/conda-forge-build-setup-feedstock/master/recipe/ff_ci_pr_build.py | \
curl https://raw.githubusercontent.com/conda-forge/conda-forge-ci-setup-feedstock/master/recipe/conda_forge_ci_setup/ff_ci_pr_build.py | \
python - -v --ci "circle" "${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}" "${CIRCLE_BUILD_NUM}" "${CIRCLE_PR_NUMBER}"
Loading

0 comments on commit d30fa79

Please sign in to comment.