Commit graph

9939 commits

Author SHA1 Message Date
Erica Portnoy
3bbb91dcd4 Merge branch 'master' into so-long-certbot-auto 2020-08-17 17:46:16 -07:00
Erica Portnoy
36c38cd227 capture python36-devel as well 2020-08-17 16:11:49 -07:00
Erica Portnoy
f6357dc536 don't fail if we can't enable rhel7 extras 2020-08-17 15:12:04 -07:00
Erica Portnoy
a0e84e14a9 explicitly specify python3 2020-08-17 14:23:19 -07:00
Erica Portnoy
5ed0726e42 no need to specify the arch once extra rhel7 repos enabled 2020-08-17 14:08:43 -07:00
Erica Portnoy
c90329c5c9 move adding python3-devel.x86_64 to bootstrap_os_packages to avoid potential race condition 2020-08-17 13:53:55 -07:00
Erica Portnoy
45f30b5d46 uncomment test_apache2 2020-08-17 13:16:05 -07:00
Erica Portnoy
f701e69388 let's just add ubuntu20 to apache2_targets while we're here 2020-08-17 13:15:54 -07:00
Brad Warren
e8a232297d
Pin non-cb-auto dependencies in our plugin snaps (#8217)
This PR fixes our [Azure failures](https://dev.azure.com/certbot/certbot/_build/results?buildId=2492&view=results) by pinning our Python dependencies that are not included in certbot-auto.

This is done using the same approach as our [snap README](575092d603/tools/snap (build-the-snaps)) and [Docker images](575092d603/tools/docker/core/Dockerfile (L24-L25)) with some minor details changed to hopefully make the Python code more readable.

You can see tests passing with this change at https://dev.azure.com/certbot/certbot/_build/results?buildId=2495&view=results.
2020-08-17 11:54:29 -07:00
Erica Portnoy
c3c39bab6c Merge branch 'master' into so-long-certbot-auto 2020-08-16 13:20:00 -07:00
Brad Warren
575092d603
Drop Python 3.5 support (#8206)
* delete classifiers

* update python_requires

* Update py35 Azure jobs

* Revert "Add warnings about Python 3.5 deprecation in Certbot (#8154)"

This reverts commit 270b5535e2.

* Update other Python 3.5 references.

* update changelog

* bump MIN_PYTHON_3_VERSION
2020-08-16 13:19:08 -07:00
Erica Portnoy
71c31e5a5e don't try to upgrade a perfectly good python version 2020-08-15 11:31:39 -07:00
Erica Portnoy
7ab3d5fefd replace debian 9 arm64 with ubuntu 20 2020-08-14 17:48:02 -07:00
Erica Portnoy
69289e4e39 add arm64 target to targets.yaml 2020-08-14 17:48:02 -07:00
Erica Portnoy
9cd27802f8 correct pyenv usage on ubuntu 2020-08-14 17:48:02 -07:00
Erica Portnoy
8721d5659e remove arm64 instance because it's having auth trouble 2020-08-14 17:48:02 -07:00
Erica Portnoy
fe808a3ab1 use pyenv to upgrade to python3.5 2020-08-14 17:47:15 -07:00
Erica Portnoy
c5c50fa7c0 Add 20.04 and 20.04 arm images to targets.yaml 2020-08-14 17:47:15 -07:00
Erica Portnoy
83e3e9b4a9 don't run test_tests or test_sdists on debian 9 or ubuntu 16.04 2020-08-14 17:47:15 -07:00
Erica Portnoy
3a435350a7 Upgrade python version for debian in test_apache2.sh 2020-08-14 17:47:15 -07:00
Erica Portnoy
a618baec2b only install python3-devel.x86_64 for rhel7 2020-08-14 17:47:15 -07:00
Erica Portnoy
7fa99e3fc9 Update tests and instructions to use auto_targets.yaml with test_leauto_upgrades.sh and test_letsencrypt_auto_certonly_standalone.sh 2020-08-14 17:47:15 -07:00
Erica Portnoy
14bcf86760 clean up code and comments 2020-08-14 17:47:15 -07:00
Erica Portnoy
8f05571784 enable additional rhel7 repos 2020-08-14 17:47:15 -07:00
Erica Portnoy
c3169e992e fix test_sdists 2020-08-14 17:47:15 -07:00
Erica Portnoy
7bb8334693 add additional python3-devel pkg name 2020-08-14 17:47:15 -07:00
Erica Portnoy
25cb2780cc take venv3.py call out of bootstrap in all scripts 2020-08-14 17:47:15 -07:00
Erica Portnoy
ffdc6be514 move setting up venv back out of script so it's not run with sudo 2020-08-14 17:47:15 -07:00
Erica Portnoy
171fde5f51 Update test_sdists to use new script 2020-08-14 17:47:15 -07:00
Erica Portnoy
6fa506a62d readd targets 2020-08-14 17:47:15 -07:00
Erica Portnoy
72d1d7316c shouldn't need virtualenv on rhel 2020-08-14 17:47:15 -07:00
Erica Portnoy
72241f523d modify test_apache2 to use new format 2020-08-14 17:47:15 -07:00
Erica Portnoy
1e8b371f26 add targets back 2020-08-14 17:47:15 -07:00
Erica Portnoy
58d637f124 call the venv creation from inside the bootstrap 2020-08-14 17:47:15 -07:00
Erica Portnoy
fba0aa797e add x 2020-08-14 17:47:15 -07:00
Erica Portnoy
c25c898b27 put python version checking in back in 2020-08-14 17:47:15 -07:00
Erica Portnoy
98c3a50256 modify test_tests to use new script 2020-08-14 17:47:15 -07:00
Erica Portnoy
20ea946c2f Delete a whole bunch of the bootstrap script 2020-08-14 17:47:15 -07:00
Erica Portnoy
c49cefb9b0 Create bootstrap script 2020-08-14 17:47:15 -07:00
Brad Warren
2d62dec7ec
Fix certbot.compat.os docs (#8209)
* Don't document stdlib os.

* Move isort out of docstring.

* fix os import

* fix comment length
2020-08-13 17:24:31 -07:00
Brad Warren
f93b90f87a
You don't need to set --server (#8200) 2020-08-12 13:27:53 -07:00
Brad Warren
f40e5bdefe
Automate Docker builds in Azure (#8193)
Fixes https://github.com/certbot/certbot/issues/8022, https://github.com/certbot-docker/certbot-docker/issues/25, and https://github.com/certbot-docker/certbot-docker/issues/20.

This PR builds on https://github.com/certbot/certbot/pull/8192 to set up similar builds in Azure to what we currently have at release time as well as nightly builds allowing us to catch problems in these images before a release. It also fully automates our Docker deployments removing a manual step from our release process. We'll need to update our release instructions once this PR lands.

If you're not familiar with our `certbot-docker` setup, you can read about how these scripts customized the build process on Docker Hub at https://docs.docker.com/docker-hub/builds/advanced/.

You can see the process working properly at:

* Nightly build on my fork: https://dev.azure.com/bmw0523/bmw/_build/results?buildId=345&view=logs&j=70ac378a-cb1f-50d1-b328-169807afbcfa
* Release build on my fork: https://dev.azure.com/bmw0523/bmw/_build/results?buildId=346&view=logs&j=70ac378a-cb1f-50d1-b328-169807afbcfa
* Nightly build on Certbot's Azure setup: https://dev.azure.com/certbot/certbot/_build/results?buildId=2426&view=logs&j=70ac378a-cb1f-50d1-b328-169807afbcfa

The builds on my fork pushed to https://hub.docker.com/u/certbottest. The credentials for this account are in our shared vault in 1password if you want to play around with this.

While the scripts will (almost?) always be run in CI, I tested the scripts successfully on macOS, Ubuntu 18.04, and Ubuntu 20.04, however, **the scripts do not seem to work when using the Docker snap, at least on Ubuntu 20.04.** It does work with the `docker.io` packages from `apt`. I was able to make things work by no longer setting `DOCKER_BUILDKIT`, but as I described in the code comments, this breaks things on Azure.

When writing this PR, I tried to make the minimal modifications to our current set up to get the behavior we want. I'm planning on working on splitting the Docker builds into different Azure jobs so it doesn't increase the overall build time, but this isn't trivial so I figured it would be best done in a separate PR.

* Remove license.

* update build scripts

* write deploy code

* Remove unused READMEs.

* rewrite readme

* Make testing on a fork easier.

* Set up Azure automation.

* fix typo

* Make output more verbose.

* clean up cleanup...everybody everywhere

* separate build and deploy

* Document docker-hub credentials

* Use Docker BuildKit when building.

* Remove unneeded .gitignore files.

* Fix tools/docker/README.md grammar

Co-authored-by: ohemorange <ebportnoy@gmail.com>

* Clarify <TAG> in README.

* no docker snap

* rename docker job

Co-authored-by: Erica Portnoy <ebportnoy@gmail.com>
2020-08-11 13:09:38 -07:00
Brad Warren
9bbcc0046c
fix --archs default (#8195) 2020-08-11 12:52:24 -07:00
Brad Warren
b3dd2c09ba
Remove release branch notification cruft. (#8196) 2020-08-11 12:50:54 -07:00
Brad Warren
8574313841
Remove final jessie references outside of cb-auto. (#8194) 2020-08-07 13:35:21 -07:00
kden
a677534462
Delete or update references to Debian 8 Jessie (#8065)
* Delete or update references to Debian 8 Jessie

* Don't delete oldest constraints from Jessie, but document in comments.

* Update tools/oldest_constraints.txt

Co-authored-by: ohemorange <ebportnoy@gmail.com>

Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
Co-authored-by: ohemorange <ebportnoy@gmail.com>
2020-08-07 12:21:52 -07:00
ohemorange
22730dc0ac
Merge pull request #8192 from certbot/docker-base
Add certbot-docker files to this repository preserving history
2020-08-06 16:46:17 -07:00
ohemorange
086e6c46b6
Improve github release creation process (#8189)
* Improve github release creation process

* Comment file

* Update tools/create_github_release.py

Co-authored-by: Brad Warren <bmw@users.noreply.github.com>

* run chmod +x on tools/create_github_release.py

* Add description of create github release method

* remove references to unnecessary azure credential

* remove unnecessary import

* Add reminders to update other file to definitions in .azure-pipelines

* Raise an error if we fail to fetch the artifact from azure

* Create github release as a draft, upload artifacts, then un-draft, for hooks to be run at the right point

* get the version number from the release

* add new packages to dev3_extras so they're installed by tools/venv3.py

* remove unnecessary import

* fun fact: tempdirs behave differently when used as a context manager

* Move comment to construct.py

Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2020-08-06 16:32:57 -07:00
osirisinferi
bc0ed3cb01
[Docs] Remove obsolete Gentoo installation instructions and add packages. (#8184)
It seems my old instruction isn't required any longer for Gentoo. To be honest, I don't have a clue since when, but my own Gentoo server isn't even using the workaround mentioned currently in the documentation at the moment. So it seems the Apache plugin works just fine without this workaround 🤦 

Also, the Gentoo repository obviously also includes the nginx since a long time. I guess my original text is ancient.. It also includes *one* of the many DNS plugins, with a different maintainer than the other "main" packages. It currently only has version 0.39.0, so I don't have a clue if it's being maintained officially.

* Remove obsolete Gentoo instructions and add packages.

* Capitalize note

Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2020-08-06 14:13:53 -07:00
Felix Yan
220cc07239
Correct a typo in acme/tests/client_test.py (#8186) 2020-08-05 11:44:23 -07:00