From 46d4fce02cb4cec99282e65821af983ffaedb7d8 Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Mon, 6 May 2019 09:02:21 -0700 Subject: [PATCH 01/13] Initial Drone support --- conda_smithy/cli.py | 2 +- conda_smithy/configure_feedstock.py | 71 +++++++++++++++++++- conda_smithy/templates/README.md.tmpl | 10 +++ conda_smithy/templates/build_and_run.sh.tmpl | 70 +++++++++++++++++++ conda_smithy/templates/drone.yml.tmpl | 27 ++++++++ 5 files changed, 176 insertions(+), 4 deletions(-) mode change 100755 => 100644 conda_smithy/cli.py mode change 100755 => 100644 conda_smithy/configure_feedstock.py create mode 100644 conda_smithy/templates/build_and_run.sh.tmpl create mode 100644 conda_smithy/templates/drone.yml.tmpl diff --git a/conda_smithy/cli.py b/conda_smithy/cli.py old mode 100755 new mode 100644 index 4dd0a7bbe..586f7ad27 --- a/conda_smithy/cli.py +++ b/conda_smithy/cli.py @@ -200,7 +200,7 @@ def __init__(self, parser): default="conda-forge", help="github organisation under which to register this repo", ) - for ci in ["Azure", "Travis", "Circle", "Appveyor"]: + for ci in ["Azure", "Travis", "Circle", "Appveyor", "Drone"]: scp.add_argument( "--without-{}".format(ci.lower()), dest=ci.lower(), diff --git a/conda_smithy/configure_feedstock.py b/conda_smithy/configure_feedstock.py old mode 100755 new mode 100644 index 4e284d1b1..2caa9d21b --- a/conda_smithy/configure_feedstock.py +++ b/conda_smithy/configure_feedstock.py @@ -9,6 +9,7 @@ import warnings from collections import OrderedDict import copy +import sys import conda_build.api import conda_build.utils @@ -1002,7 +1003,6 @@ def render_appveyor(jinja_env, forge_config, forge_dir): def _azure_specific_setup(jinja_env, forge_config, forge_dir, platform): - # TODO: platform_templates = { "linux": [ "azure-pipelines-linux.yml.tmpl", @@ -1060,6 +1060,65 @@ def render_azure(jinja_env, forge_config, forge_dir): ) +def _drone_specific_setup(jinja_env, forge_config, forge_dir, platform): + # TODO Update to only use the build and setup script + platform_templates = { + "linux": [ + "build_and_run.sh.tmpl", + ], + "osx": [], + "win": [], + } + template_files = platform_templates.get(platform, []) + + # Explicitly add in a newline character to ensure that jinja templating doesn't do something stupid + build_setup = "run_conda_forge_build_setup\n" + + if platform == "linux": + yum_build_setup = generate_yum_requirements(forge_dir) + if yum_build_setup: + forge_config['yum_build_setup'] = yum_build_setup + + forge_config["build_setup"] = build_setup + forge_config["docker"]["interactive"] = False + + # Override the Docker image here so we don't need to set it in the template + forge_config["docker"]["image"] = "condaforge/linux-anvil-aarch64" + + _render_template_exe_files( + forge_config=forge_config, + target_dir=os.path.join(forge_dir, ".drone"), + jinja_env=jinja_env, + template_files=template_files, + ) + forge_config["docker"]["interactive"] = True + + +def render_drone(jinja_env, forge_config, forge_dir): + target_path = os.path.join(forge_dir, ".drone.yml") + template_filename = "drone.yml.tmpl" + fast_finish_text = "" + + # TODO: for now just get this ignoring other pieces + platforms, archs, keep_noarchs, upload_packages = _get_platforms_of_provider( + "drone", forge_config + ) + + return _render_ci_provider( + "drone", + jinja_env=jinja_env, + forge_config=forge_config, + forge_dir=forge_dir, + platforms=platforms, + archs=archs, + fast_finish_text=fast_finish_text, + platform_target_path=target_path, + platform_template_file=template_filename, + platform_specific_setup=_drone_specific_setup, + keep_noarchs=keep_noarchs, + upload_packages=upload_packages, + ) + def render_README(jinja_env, forge_config, forge_dir): # we only care about the first metadata object for sake of readme metas = conda_build.api.render( @@ -1141,6 +1200,7 @@ def _load_forge_config(forge_dir, exclusive_config_file): "interactive": True, }, "templates": {}, + "drone": {}, "travis": {}, "circle": {}, "appveyor": {}, @@ -1247,6 +1307,10 @@ def _load_forge_config(forge_dir, exclusive_config_file): if config["provider"][platform] == "default": config["provider"][platform] = "azure" + # TODO: Switch default to native builds using Drone + # if config["provider"]["linux_aarch64"] in {"native", "default"}: + # config["provider"]["linux_aarch64"] = "azure" + if config["provider"]["linux_ppc64le"] in {"native", "default"}: config["provider"]["linux_ppc64le"] = "travis" @@ -1375,7 +1439,7 @@ def main( check_version_uptodate(r, "conda-smithy", __version__, True) get_cfp_file_path(r, True) return True - + error_on_warn = False if no_check_uptodate else True index = conda_build.conda_interface.get_index(channel_urls=["conda-forge"]) r = conda_build.conda_interface.Resolve(index) @@ -1397,7 +1461,7 @@ def main( config = _load_forge_config(forge_dir, exclusive_config_file) - for each_ci in ["travis", "circle", "appveyor"]: + for each_ci in ["travis", "circle", "appveyor", "drone"]: if config[each_ci].pop("enabled", None): warnings.warn( "It is not allowed to set the `enabled` parameter for `%s`." @@ -1423,6 +1487,7 @@ def main( render_travis(env, config, forge_dir) render_appveyor(env, config, forge_dir) render_azure(env, config, forge_dir) + render_drone(env, config, forge_dir) render_README(env, config, forge_dir) if os.path.isdir(os.path.join(forge_dir, ".ci_support")): diff --git a/conda_smithy/templates/README.md.tmpl b/conda_smithy/templates/README.md.tmpl index 683f10128..820729ff7 100644 --- a/conda_smithy/templates/README.md.tmpl +++ b/conda_smithy/templates/README.md.tmpl @@ -78,6 +78,16 @@ Current build status {%- endif -%} + {%- if drone.enabled -%} + + Drone + + + linux + + + + {%- endif -%} {%- if appveyor.enabled -%} Appveyor diff --git a/conda_smithy/templates/build_and_run.sh.tmpl b/conda_smithy/templates/build_and_run.sh.tmpl new file mode 100644 index 000000000..dfa0745e5 --- /dev/null +++ b/conda_smithy/templates/build_and_run.sh.tmpl @@ -0,0 +1,70 @@ +#!/usr/bin/env bash + +# Because this build is already running in a container we don't do the docker +# run. Likewise, the directories aren't volume mounted so we use the Drone values +# instead. Also note that environment variables are set in the .drone.yml file +# and passed into this script since docker run isn't used. + +set -xeuo pipefail + +# Activate the conda environment first +. /opt/conda/bin/activate + +FEEDSTOCK_ROOT="${CI_WORKSPACE}" +RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" +ARTIFACTS="${FEEDSTOCK_ROOT}/build_artifacts" + +if [ -z "$CONFIG" ]; then + set +x + FILES=`ls .ci_support/linux_*` + CONFIGS="" + for file in $FILES; do + CONFIGS="${CONFIGS}'${file:12:-5}' or "; + done + echo "Need to set CONFIG env variable. Value can be one of ${CONFIGS:0:-4}" + exit 1 +fi + +mkdir -p "$ARTIFACTS" +DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" +rm -f "$DONE_CANARY" + +# Conda build + +#export PYTHONUNBUFFERED=1 +#export FEEDSTOCK_ROOT=/home/conda/feedstock_root +#export RECIPE_ROOT=/home/conda/recipe_root +export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" +export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" + +cat >~/.condarc < Date: Mon, 6 May 2019 11:31:51 -0700 Subject: [PATCH 02/13] Combine build steps, add news, get native build working --- conda_smithy/configure_feedstock.py | 8 ++-- conda_smithy/templates/build_and_run.sh.tmpl | 42 +++----------------- conda_smithy/templates/build_steps.sh.tmpl | 10 ++--- news/drone.rst | 26 ++++++++++++ 4 files changed, 40 insertions(+), 46 deletions(-) create mode 100644 news/drone.rst diff --git a/conda_smithy/configure_feedstock.py b/conda_smithy/configure_feedstock.py index 2caa9d21b..953f3df18 100644 --- a/conda_smithy/configure_feedstock.py +++ b/conda_smithy/configure_feedstock.py @@ -1061,9 +1061,9 @@ def render_azure(jinja_env, forge_config, forge_dir): def _drone_specific_setup(jinja_env, forge_config, forge_dir, platform): - # TODO Update to only use the build and setup script platform_templates = { "linux": [ + "build_steps.sh.tmpl", "build_and_run.sh.tmpl", ], "osx": [], @@ -1307,9 +1307,9 @@ def _load_forge_config(forge_dir, exclusive_config_file): if config["provider"][platform] == "default": config["provider"][platform] = "azure" - # TODO: Switch default to native builds using Drone - # if config["provider"]["linux_aarch64"] in {"native", "default"}: - # config["provider"]["linux_aarch64"] = "azure" + # TODO: Switch default to Drone + if config["provider"]["linux_aarch64"] in {"native"}: + config["provider"]["linux_aarch64"] = "drone" if config["provider"]["linux_ppc64le"] in {"native", "default"}: config["provider"]["linux_ppc64le"] = "travis" diff --git a/conda_smithy/templates/build_and_run.sh.tmpl b/conda_smithy/templates/build_and_run.sh.tmpl index dfa0745e5..89f0652a6 100644 --- a/conda_smithy/templates/build_and_run.sh.tmpl +++ b/conda_smithy/templates/build_and_run.sh.tmpl @@ -10,9 +10,10 @@ set -xeuo pipefail # Activate the conda environment first . /opt/conda/bin/activate -FEEDSTOCK_ROOT="${CI_WORKSPACE}" -RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" -ARTIFACTS="${FEEDSTOCK_ROOT}/build_artifacts" +# Set up the directories here needed for the build script +export FEEDSTOCK_ROOT="${CI_WORKSPACE}" +export RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" +export ARTIFACTS="${FEEDSTOCK_ROOT}/build_artifacts" if [ -z "$CONFIG" ]; then set +x @@ -30,41 +31,8 @@ DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" rm -f "$DONE_CANARY" # Conda build +./.drone/build_steps.sh -#export PYTHONUNBUFFERED=1 -#export FEEDSTOCK_ROOT=/home/conda/feedstock_root -#export RECIPE_ROOT=/home/conda/recipe_root -export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" -export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" - -cat >~/.condarc <~/.condarc < + +**Deprecated:** + +* + +**Removed:** + +* + +**Fixed:** + +* + +**Security:** + +* + From 35ad63ae104ee00fab218b3eadcdea1764ccdc23 Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Mon, 6 May 2019 11:33:56 -0700 Subject: [PATCH 03/13] Unneeded import --- conda_smithy/configure_feedstock.py | 1 - 1 file changed, 1 deletion(-) diff --git a/conda_smithy/configure_feedstock.py b/conda_smithy/configure_feedstock.py index 953f3df18..740e761fe 100644 --- a/conda_smithy/configure_feedstock.py +++ b/conda_smithy/configure_feedstock.py @@ -9,7 +9,6 @@ import warnings from collections import OrderedDict import copy -import sys import conda_build.api import conda_build.utils From a11834a16cfee82c8913d6df996b22a9a5da203e Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Mon, 6 May 2019 12:56:10 -0700 Subject: [PATCH 04/13] Clean up build steps --- conda_smithy/configure_feedstock.py | 1 - conda_smithy/templates/build_and_run.sh.tmpl | 38 -------------------- conda_smithy/templates/drone.yml.tmpl | 5 ++- 3 files changed, 4 insertions(+), 40 deletions(-) delete mode 100644 conda_smithy/templates/build_and_run.sh.tmpl diff --git a/conda_smithy/configure_feedstock.py b/conda_smithy/configure_feedstock.py index 740e761fe..5936c9128 100644 --- a/conda_smithy/configure_feedstock.py +++ b/conda_smithy/configure_feedstock.py @@ -1063,7 +1063,6 @@ def _drone_specific_setup(jinja_env, forge_config, forge_dir, platform): platform_templates = { "linux": [ "build_steps.sh.tmpl", - "build_and_run.sh.tmpl", ], "osx": [], "win": [], diff --git a/conda_smithy/templates/build_and_run.sh.tmpl b/conda_smithy/templates/build_and_run.sh.tmpl deleted file mode 100644 index 89f0652a6..000000000 --- a/conda_smithy/templates/build_and_run.sh.tmpl +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env bash - -# Because this build is already running in a container we don't do the docker -# run. Likewise, the directories aren't volume mounted so we use the Drone values -# instead. Also note that environment variables are set in the .drone.yml file -# and passed into this script since docker run isn't used. - -set -xeuo pipefail - -# Activate the conda environment first -. /opt/conda/bin/activate - -# Set up the directories here needed for the build script -export FEEDSTOCK_ROOT="${CI_WORKSPACE}" -export RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" -export ARTIFACTS="${FEEDSTOCK_ROOT}/build_artifacts" - -if [ -z "$CONFIG" ]; then - set +x - FILES=`ls .ci_support/linux_*` - CONFIGS="" - for file in $FILES; do - CONFIGS="${CONFIGS}'${file:12:-5}' or "; - done - echo "Need to set CONFIG env variable. Value can be one of ${CONFIGS:0:-4}" - exit 1 -fi - -mkdir -p "$ARTIFACTS" -DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" -rm -f "$DONE_CANARY" - -# Conda build -./.drone/build_steps.sh - -# verify that the end of the script was reached -test -f "$DONE_CANARY" - diff --git a/conda_smithy/templates/drone.yml.tmpl b/conda_smithy/templates/drone.yml.tmpl index 63f6e2e0f..c0d9020c7 100644 --- a/conda_smithy/templates/drone.yml.tmpl +++ b/conda_smithy/templates/drone.yml.tmpl @@ -19,7 +19,10 @@ steps: #BINSTAR_TOKEN: "" commands: {%- if 'linux' in platform %} - - ./.drone/build_and_run.sh + - . /opt/conda/bin/activate + - export FEEDSTOCK_ROOT="${CI_WORKSPACE}" + - export RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" + - ./.drone/build_steps.sh - echo "Done building" {%- endif %} {% endfor %} From d92859db469bd7fafc1ffa0758b1cbde668a1ccf Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Mon, 6 May 2019 13:00:36 -0700 Subject: [PATCH 05/13] Fix sh syntax --- conda_smithy/templates/drone.yml.tmpl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conda_smithy/templates/drone.yml.tmpl b/conda_smithy/templates/drone.yml.tmpl index c0d9020c7..d41727d33 100644 --- a/conda_smithy/templates/drone.yml.tmpl +++ b/conda_smithy/templates/drone.yml.tmpl @@ -20,8 +20,8 @@ steps: commands: {%- if 'linux' in platform %} - . /opt/conda/bin/activate - - export FEEDSTOCK_ROOT="${CI_WORKSPACE}" - - export RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" + - export FEEDSTOCK_ROOT="$CI_WORKSPACE" + - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" - ./.drone/build_steps.sh - echo "Done building" {%- endif %} From ee13bcde438ca6aa85043fd95bf7b0c2cad5cf55 Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Mon, 6 May 2019 13:58:20 -0700 Subject: [PATCH 06/13] Unneeded env varible --- conda_smithy/templates/drone.yml.tmpl | 1 - 1 file changed, 1 deletion(-) diff --git a/conda_smithy/templates/drone.yml.tmpl b/conda_smithy/templates/drone.yml.tmpl index d41727d33..6b98b7ea6 100644 --- a/conda_smithy/templates/drone.yml.tmpl +++ b/conda_smithy/templates/drone.yml.tmpl @@ -15,7 +15,6 @@ steps: CONFIG: {{ config }} UPLOAD_PACKAGES: {{ upload }} PLATFORM: {{ platform }} - DOCKER_IMAGE: {{ docker.image }} #BINSTAR_TOKEN: "" commands: {%- if 'linux' in platform %} From 37d59b9f58584f817488e7104c4b8b0290a97a72 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Tue, 7 May 2019 11:57:06 -0500 Subject: [PATCH 07/13] export CI variable --- conda_smithy/templates/drone.yml.tmpl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/conda_smithy/templates/drone.yml.tmpl b/conda_smithy/templates/drone.yml.tmpl index 6b98b7ea6..58a65af46 100644 --- a/conda_smithy/templates/drone.yml.tmpl +++ b/conda_smithy/templates/drone.yml.tmpl @@ -18,9 +18,10 @@ steps: #BINSTAR_TOKEN: "" commands: {%- if 'linux' in platform %} - - . /opt/conda/bin/activate - export FEEDSTOCK_ROOT="$CI_WORKSPACE" - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" + - export CI=drone + - . /opt/conda/bin/activate - ./.drone/build_steps.sh - echo "Done building" {%- endif %} From 7f5a8d822721ab0662ab0944b022b305503f3f14 Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Tue, 7 May 2019 19:44:35 -0700 Subject: [PATCH 08/13] Use docker_image in Drone config --- conda_smithy/templates/drone.yml.tmpl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/conda_smithy/templates/drone.yml.tmpl b/conda_smithy/templates/drone.yml.tmpl index 58a65af46..20b04e883 100644 --- a/conda_smithy/templates/drone.yml.tmpl +++ b/conda_smithy/templates/drone.yml.tmpl @@ -1,8 +1,8 @@ {% if configs[0] -%} -{%- for config, platform, upload in configs | sort -%} +{%- for config_name, platform, upload, config in configs | sort -%} --- kind: pipeline -name: {{ config }} +name: {{ config_name }} platform: os: linux @@ -10,9 +10,9 @@ platform: steps: - name: Install and build - image: {{ docker.image }} + image: {{ config["docker_image"][-1] }} environment: - CONFIG: {{ config }} + CONFIG: {{ config_name }} UPLOAD_PACKAGES: {{ upload }} PLATFORM: {{ platform }} #BINSTAR_TOKEN: "" From 4da11e7c7ed149307ad7dbe1cc576dc2ebfd2f95 Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Wed, 8 May 2019 07:07:34 -0700 Subject: [PATCH 09/13] Remove unneeded config --- conda_smithy/configure_feedstock.py | 5 ----- 1 file changed, 5 deletions(-) diff --git a/conda_smithy/configure_feedstock.py b/conda_smithy/configure_feedstock.py index 6cc81cb57..bc906400c 100644 --- a/conda_smithy/configure_feedstock.py +++ b/conda_smithy/configure_feedstock.py @@ -1047,10 +1047,6 @@ def _drone_specific_setup(jinja_env, forge_config, forge_dir, platform): forge_config['yum_build_setup'] = yum_build_setup forge_config["build_setup"] = build_setup - forge_config["docker"]["interactive"] = False - - # Override the Docker image here so we don't need to set it in the template - forge_config["docker"]["image"] = "condaforge/linux-anvil-aarch64" _render_template_exe_files( forge_config=forge_config, @@ -1058,7 +1054,6 @@ def _drone_specific_setup(jinja_env, forge_config, forge_dir, platform): jinja_env=jinja_env, template_files=template_files, ) - forge_config["docker"]["interactive"] = True def render_drone(jinja_env, forge_config, forge_dir): From 4c4810d3e6feb3c6a99ca347184b5e1142aaef58 Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Thu, 9 May 2019 08:59:07 -0700 Subject: [PATCH 10/13] Use anchors for build steps --- conda_smithy/templates/drone.yml.tmpl | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/conda_smithy/templates/drone.yml.tmpl b/conda_smithy/templates/drone.yml.tmpl index 20b04e883..ad429a1b2 100644 --- a/conda_smithy/templates/drone.yml.tmpl +++ b/conda_smithy/templates/drone.yml.tmpl @@ -1,6 +1,14 @@ +--- + +build_commands: &build_commands + - export FEEDSTOCK_ROOT="$CI_WORKSPACE" + - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" + - export CI=drone + - . /opt/conda/bin/activate + - echo "Done building" + {% if configs[0] -%} {%- for config_name, platform, upload, config in configs | sort -%} ---- kind: pipeline name: {{ config_name }} @@ -16,15 +24,10 @@ steps: UPLOAD_PACKAGES: {{ upload }} PLATFORM: {{ platform }} #BINSTAR_TOKEN: "" - commands: {%- if 'linux' in platform %} - - export FEEDSTOCK_ROOT="$CI_WORKSPACE" - - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" - - export CI=drone - - . /opt/conda/bin/activate - - ./.drone/build_steps.sh - - echo "Done building" + commands: *build_commands {%- endif %} + {% endfor %} {%- endif %} From f13ca910879124b8fc234354f98b7c6d4a9f0d68 Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Thu, 9 May 2019 11:18:12 -0700 Subject: [PATCH 11/13] Add build_steps script back --- conda_smithy/templates/drone.yml.tmpl | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/conda_smithy/templates/drone.yml.tmpl b/conda_smithy/templates/drone.yml.tmpl index ad429a1b2..ad315dcb8 100644 --- a/conda_smithy/templates/drone.yml.tmpl +++ b/conda_smithy/templates/drone.yml.tmpl @@ -1,14 +1,6 @@ ---- - -build_commands: &build_commands - - export FEEDSTOCK_ROOT="$CI_WORKSPACE" - - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" - - export CI=drone - - . /opt/conda/bin/activate - - echo "Done building" - {% if configs[0] -%} {%- for config_name, platform, upload, config in configs | sort -%} +--- kind: pipeline name: {{ config_name }} @@ -25,9 +17,14 @@ steps: PLATFORM: {{ platform }} #BINSTAR_TOKEN: "" {%- if 'linux' in platform %} - commands: *build_commands + commands: + - export FEEDSTOCK_ROOT="$CI_WORKSPACE" + - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" + - export CI=drone + - . /opt/conda/bin/activate + - ./.drone/build_steps.sh + - echo "Done building" {%- endif %} {% endfor %} {%- endif %} - From d703dd1af6ea31e18d3444aa9164190c0815fa3d Mon Sep 17 00:00:00 2001 From: Josh Reichardt Date: Thu, 9 May 2019 16:27:43 -0700 Subject: [PATCH 12/13] Chown RECIPE_ROOT before build --- conda_smithy/templates/drone.yml.tmpl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conda_smithy/templates/drone.yml.tmpl b/conda_smithy/templates/drone.yml.tmpl index ad315dcb8..dcf8a04ff 100644 --- a/conda_smithy/templates/drone.yml.tmpl +++ b/conda_smithy/templates/drone.yml.tmpl @@ -21,8 +21,8 @@ steps: - export FEEDSTOCK_ROOT="$CI_WORKSPACE" - export RECIPE_ROOT="$FEEDSTOCK_ROOT/recipe" - export CI=drone - - . /opt/conda/bin/activate - - ./.drone/build_steps.sh + - sed -i '$ichown -R conda:conda "$FEEDSTOCK_ROOT"' /opt/docker/bin/entrypoint + - /opt/docker/bin/entrypoint $FEEDSTOCK_ROOT/.drone/build_steps.sh - echo "Done building" {%- endif %} From d2216978194dbb745280a3bf43bbd6f43a5105c1 Mon Sep 17 00:00:00 2001 From: Isuru Fernando Date: Thu, 23 May 2019 01:06:27 -0500 Subject: [PATCH 13/13] Update drone.rst --- news/drone.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/news/drone.rst b/news/drone.rst index a2ceaf545..fb959363d 100644 --- a/news/drone.rst +++ b/news/drone.rst @@ -3,6 +3,9 @@ * Added native aarch64 support for builds using Drone.io. This can be enabled by either using `provider: {linux_aarch64: drone}` or `provider: {linux_aarch64: native}` in the conda-forge.yml. + + Currently, drone has to be enabled manually as there is no automatic CI + registration for repos. **Changed:**