From 9f994d7a509c0532642ff81a674e4785cd31ea1c Mon Sep 17 00:00:00 2001 From: Brad Warren Date: Mon, 6 Jul 2020 11:41:26 -0700 Subject: [PATCH 1/4] Run at 4:30 UTC to have Azure reparse YAML file. (#8133) --- .azure-pipelines/nightly.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.azure-pipelines/nightly.yml b/.azure-pipelines/nightly.yml index 6475db27a..1d3261fb6 100644 --- a/.azure-pipelines/nightly.yml +++ b/.azure-pipelines/nightly.yml @@ -2,7 +2,7 @@ trigger: none pr: none schedules: - - cron: "0 4 * * *" + - cron: "30 4 * * *" displayName: Nightly build branches: include: From cd993cdfb1d847f1170a388ce1c7f74cfb98a17e Mon Sep 17 00:00:00 2001 From: Brad Warren Date: Mon, 6 Jul 2020 12:31:55 -0700 Subject: [PATCH 2/4] Remove grade devel from Certbot snap. (#8128) If you go to a URL like https://snapcraft.io/certbot/releases and try to move the Certbot snap into the candidate or stable channels, you cannot do so. There is a tooltip which says that revisions with the grade devel cannot be promoted to candidate or stable channels. The documentation for `grade` can be found at https://snapcraft.io/docs/snapcraft-yaml-reference where it says the value is optional and > Defines the quality grade of the snap. Type: enum Can be either devel (i.e. a development version of the snap, so not to be published to the stable or candidate channels) or stable (i.e. a stable release or release candidate, which can be released to all channels) Example: [stable or devel] I'm working on a proposal for our next steps for snaps which involves moving the Certbot snap to the stable channel. I of course won't make those changes without giving others a chance to share their opinion, but I'd like to avoid the situation where we're technically unable to move the Certbot 1.6.0 snap to the stable channel despite wanting to do so. I started to make the same changes to the DNS plugins, but I personally think it's too soon to propose stable versions of those yet and `grade` is a simple way to ensure we don't accidentally promote something there. You can see the snap being built and run successfully with this change at https://dev.azure.com/certbot/certbot/_build/results?buildId=2246&view=results. --- snap/snapcraft.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 14c1fc9e7..df6149551 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -14,7 +14,6 @@ description: | - Keep track of when your certificate is going to expire, and renew it - Help you revoke the certificate if that ever becomes necessary. confinement: classic -grade: devel base: core20 adopt-info: certbot From 6bca93075231fd48948d0c6564c10ec93611b2e8 Mon Sep 17 00:00:00 2001 From: Brad Warren Date: Mon, 6 Jul 2020 15:31:24 -0700 Subject: [PATCH 3/4] Remove unnecessary symlink (#8135) This isn't needed anymore thanks to the line: ``` AWS_EC2_PEM_FILE: $(testFarmPem.secureFilePath) ``` --- .azure-pipelines/templates/steps/tox-steps.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.azure-pipelines/templates/steps/tox-steps.yml b/.azure-pipelines/templates/steps/tox-steps.yml index f3b0fc62d..828552e43 100644 --- a/.azure-pipelines/templates/steps/tox-steps.yml +++ b/.azure-pipelines/templates/steps/tox-steps.yml @@ -37,9 +37,6 @@ steps: inputs: secureFile: azure-test-farm.pem condition: contains(variables['TOXENV'], 'test-farm') - - bash: | - ln -s $(testFarmPem.secureFilePath) tests/letstest/test-farm.pem - condition: contains(variables['TOXENV'], 'test-farm') - bash: | export TARGET_BRANCH="`echo "${BUILD_SOURCEBRANCH}" | sed -E 's!refs/(heads|tags)/!!g'`" [ -z "${SYSTEM_PULLREQUEST_TARGETBRANCH}" ] || export TARGET_BRANCH="${SYSTEM_PULLREQUEST_TARGETBRANCH}" From 183ccc64b102410c716e21bb9439fb8d21e31488 Mon Sep 17 00:00:00 2001 From: Adrien Ferrand Date: Tue, 7 Jul 2020 01:04:59 +0200 Subject: [PATCH 4/4] Some improvements (#8132) Short PR to improve some things during snap builds: * cleanup snapcraft assets before a build, in order to avoid some weird errors when two builds are executed consecutively without cleanup * use python3 explicitly in `tools/simple_http_server.py` because on several recent distributions, `python` binary is not exposed anymore, only `python2` or `python3`. --- snap/local/build.sh | 2 +- tools/simple_http_server.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/snap/local/build.sh b/snap/local/build.sh index bbe5ba323..eccb99760 100755 --- a/snap/local/build.sh +++ b/snap/local/build.sh @@ -39,4 +39,4 @@ docker run \ -w "/certbot" \ -e "PIP_EXTRA_INDEX_URL=http://localhost:8080" \ "adferrand/snapcraft:${DOCKER_ARCH}-stable" \ - snapcraft + bash -c "snapcraft clean && snapcraft" diff --git a/tools/simple_http_server.py b/tools/simple_http_server.py index 24c55962d..32f35ec69 100755 --- a/tools/simple_http_server.py +++ b/tools/simple_http_server.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 """A version of Python's SimpleHTTPServer that flushes its output.""" import sys @@ -8,6 +8,7 @@ except ImportError: from BaseHTTPServer import HTTPServer from SimpleHTTPServer import SimpleHTTPRequestHandler + def serve_forever(port=0): """Spins up an HTTP server on all interfaces and the given port.