Commit Graph
10718 Commits
Author SHA1 Message Date
Will Greenberg 336ca91c26 Add contents to certbot/CHANGELOG.md for next version 2023-03-07 13:18:07 -08:00
Will Greenberg eeb88c0855 Release 2.4.0 v2.4.0 2023-03-07 13:18:06 -08:00
Will Greenberg b586672f78 Update changelog for 2.4.0 release 2023-03-07 13:17:25 -08:00
alexzorinandGitHub 397f6bc20a docs: link for certbot-standalone-nfq plugin (#9607) 2023-03-07 05:40:39 -08:00
Will GreenbergandGitHub 48b499a38f Merge pull request #9600 from certbot/yaml/github-notify-weekly
Create Weekly Notification Message for Certbot Team
2023-03-06 12:18:15 -08:00
Brad WarrenandGitHub da01846d34 Remove unnecessary unittest (#9596)
Now that we're using pytest more aggressively, I think we should start transitioning our tests to that style rather than continuing to use unittest. This PR removes some unnecessary uses of unittest I found.

I kept the test classes (while removing the inheritance from unittest.TestCase) where I felt like it added structure or logical grouping of tests.

I verified that pytest still finds all the tests in both this branch and master by running commands like:
```
pytest $(git diff --name-only master | grep -v windows_installer_integration_tests)
```
2023-03-02 06:48:40 -08:00
Brad WarrenandGitHub cd467f2ce1 remove nose cruft (#9603) 2023-03-02 10:28:20 +11:00
bdd81a5961 google: ignore declare_namespace deprecation warnings (#9604)
Fixes the nopin build on master.

---------

Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2023-03-01 22:41:00 +00:00
AlexisandGitHub 87f8eca033 Update .github/workflows/notify_weekly.yaml
Remove trailing char
2023-02-28 17:39:17 -08:00
AlexisandGitHub 10b0fb6da0 Update .github/workflows/notify_weekly.yaml 2023-02-28 17:38:43 -08:00
AlexisandGitHub 44be66eed9 Update .github/workflows/notify_weekly.yaml 2023-02-28 17:38:23 -08:00
AlexisandGitHub 173b832a8f Create Weekly Notification Message for Certbot Team
Composes Mattermost message to team channel
2023-02-28 12:38:53 -08:00
Mads JensenandGitHub 34e6b1e74d Remove redundant OCSPTestOpenSSL.tearDown (#9599) 2023-02-27 15:45:19 -08:00
Will GreenbergandGitHub 72be7999ed Merge pull request #9597 from certbot/revert-nginx-lua-detection
nginx: fix performance regression caused by #9475
2023-02-27 11:32:57 -08:00
Alex Zorin 1cb8c389b7 note the issue in the CHANGELOG 2023-02-25 09:32:38 +11:00
Alex Zorin 7c840a7dfd Revert "nginx: on encountering lua directives, produce a better warning (#9475)"
This reverts commit c178fa8c0b.
2023-02-25 08:45:19 +11:00
a42cffc351 generate multiarch images for non-architecture tags (#9586)
* generate multiarch images for non-architecture tags

* lock docker build to legacy docker buider, and bugfix

* rename deploy.sh to deploy_by_arch.sh

* Update documentation related to multiarch Docker

* Consistent IFS value with respect to other scripts

Co-authored-by: humanoid2050 <humanoid2050@monolith>
Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2023-02-22 17:53:45 -08:00
ohemorangeandGitHub 1cb48eca58 Remove update symlinks (#9592)
* Add deprecation warning when update_symlinks is run

* Remove information about update_symlinks from help

* ignore our own warning and remove unused imports

* Update changelog
2023-02-22 12:16:28 -08:00
Brad WarrenandGitHub 2a7eeef176 Polish snap_build.py (#9584)
I wanted to try to make our tooling's messaging about it a little clearer.

While fixing my typo/bad English, we happened to hit a "Chroot problem" failure! See the logs for the CI first attempt at https://dev.azure.com/certbot/certbot/_build/results?buildId=6416&view=results.

Looking at these logs, I noticed three things:

1. This message I added is sometimes printed many times because we're still processing output from snapcraft. See https://dev.azure.com/certbot/certbot/_build/results?buildId=6416&view=logs&j=f44d40a4-7318-5ffe-762c-ae4557889284&s=1dfbc15b-7d0f-52a9-b1da-b17592bf94f8&t=07786725-57f8-5198-4d13-ea77f640bd5c&l=565.
2. snapcraft is complaining that we should be using --build-for now instead of --build-on. See https://dev.azure.com/certbot/certbot/_build/results?buildId=6416&view=logs&j=f44d40a4-7318-5ffe-762c-ae4557889284&s=1dfbc15b-7d0f-52a9-b1da-b17592bf94f8&t=07786725-57f8-5198-4d13-ea77f640bd5c&l=472.
3. Us canceling the Certbot build due to a "Chroot problem" happened 3 times in 3 seconds which seems very unlikely. See https://dev.azure.com/certbot/certbot/_build/results?buildId=6416&view=logs&j=f44d40a4-7318-5ffe-762c-ae4557889284&s=1dfbc15b-7d0f-52a9-b1da-b17592bf94f8&t=07786725-57f8-5198-4d13-ea77f640bd5c&l=587. I looked at the builds on launchpad and I only saw one Certbot build. I think what's happening is this code is causing the old build state to be reported so we error immediately.
I fixed all of these things in my follow up commits.

* polish chroot problem messaging

* only execute branch once
2023-02-16 11:17:47 -08:00
Brad WarrenandGitHub a3c9371dc5 Use pytest assertions (#9585)
* run unittest2pytest

The command used here was `unittest2pytest -nw acme/tests certbot*/tests`.

* fix with pytest.raises

* add parens to fix refactoring

* <= not <
2023-02-16 16:02:02 +11:00
Brad WarrenandGitHub fedb0b5f9d Merge pull request #9581 from certbot/candidate-2.3.0
Release candidate 2.3.0
2023-02-14 15:13:44 -08:00
Will GreenbergandGitHub 1b904b62c9 Enable stale issue tracker (#9580) 2023-02-14 15:13:13 -08:00
Will Greenberg 941119f05b Bump version to 2.4.0 2023-02-14 12:44:32 -08:00
Will Greenberg 5d34a4d982 Add contents to certbot/CHANGELOG.md for next version 2023-02-14 12:44:32 -08:00
Will Greenberg d4b2d3202b Release 2.3.0 v2.3.0 2023-02-14 12:44:31 -08:00
Will Greenberg 1fe2d671cb Update changelog for 2.3.0 release 2023-02-14 12:42:21 -08:00
Will GreenbergandGitHub 9960c1907b Merge pull request #9577 from certbot/update-stale
Disable stale for PRs
2023-02-14 12:28:09 -08:00
Brad Warren 1da113d7d6 tweak comment 2023-02-14 08:55:07 -08:00
Brad Warren 64800c2b1f disable stale for PRs 2023-02-14 08:51:17 -08:00
Brad WarrenandGitHub dc07dfd07b Automatically run test files with pytest (#9576)
* Switch to pytest

git grep -l unittest.main | xargs sed -i 's/unittest.main()/sys.exit(pytest.main([__file__]))/g'
git ls-files -m | xargs -I {} sh -c "echo 'import sys\nimport pytest' >> '{}'"
isort --float-to-top .

* add pytest dep

* use sys.argv
2023-02-14 06:44:42 +11:00
alexzorinandGitHub 057524aa52 certbot-ci: fix crash in and simplify manual_http_hooks (#9570)
There is a typo (`request` instead of `requests`) in the `auth.py` generated by this function:

https://github.com/certbot/certbot/blob/d792d398134f4f8b67debaf82e6e75635409c627/certbot-ci/certbot_integration_tests/utils/misc.py#L184-L191

that has [never ever succeeded](https://gist.github.com/alexzorin/ff2686b7123cea49f1e4107d1e7d95f5#file-master-log-L203-L208).

Moreover, this polling code is not necessary because `create_http_server` already polls until the HTTP server to come up, and the file we wrote to disk is guaranteed is immediately visible by the web server anyway.

* certbot-ci: fix crash in and simplify manual_http_hooks

* remove superfluous format argument

* remove unused argument
2023-02-10 11:15:42 -08:00
Brad WarrenandGitHub 1bb09da270 Update and run isort (#9573)
I want to use isort as part of https://github.com/certbot/certbot/issues/9572 because I want to do it programmatically, however, I felt like the config needed to be tweaked a bit due to it not understanding what is and is not our own code.

This PR updates the isort config so it recognizes our own modules and runs `isort .` from the root of the repo to update everything.

* update isort config

* run "isort ."
2023-02-10 10:51:20 -08:00
Will GreenbergandGitHub d8d177ce72 Merge pull request #9575 from certbot/no-more-1.x
Simplify release process and push everyone to 2.0
2023-02-10 10:10:13 -08:00
Brad Warren 7d4535a836 tweak cloudxns condition 2023-02-09 19:35:37 -08:00
Brad Warren c32da71e8a fail faster if we try to use candidate 2023-02-09 18:56:43 -08:00
Brad Warren ca5f13d0e3 update snapcraft credentials 2023-02-09 18:55:29 -08:00
Brad Warren 91005a0422 always push to beta 2023-02-09 18:45:06 -08:00
Brad Warren f91d3ca828 remove 1.32.x deps 2023-02-09 18:42:41 -08:00
Brad Warren 3512d15dff Remove most progressive release tooling 2023-02-09 18:41:16 -08:00
Will GreenbergandGitHub caad4d93d0 Merge pull request #9574 from certbot/remove-test-test-code
Remove code testing testing code
2023-02-09 12:03:06 -08:00
Brad Warren aac02bef35 Remove code testing testing code 2023-02-08 20:55:59 -08:00
cbb4c871c2 docs: document reconfigure verb (#9563)
* docs: document reconfigure verb

* expand on the flags relevant to reconfigure

* Update phrasing

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

---------

Co-authored-by: ohemorange <ebportnoy@gmail.com>
2023-02-09 13:14:32 +11:00
ohemorangeandGitHub 99956ecab9 Fix typo direcory --> directory in --run-deploy-hooks help (#9568) 2023-02-08 16:16:28 -08:00
Brad WarrenandGitHub d792d39813 reset set_by_cli between each test (#9567) 2023-02-09 09:24:07 +11:00
Brad WarrenandGitHub f5ea5d453e fix requests-toolbelt warning (#9569) 2023-02-09 09:21:07 +11:00
AlexisandGitHub cd9ee996a8 Create SECURITY.md (#9566) 2023-02-09 07:12:15 +11:00
alexzorinandGitHub 99184daff6 repin cryptography for openssl security update (#9565)
* repin cryptography for openssl security update

https://www.openssl.org/news/secadv/20230207.txt
https://cryptography.io/en/latest/changelog/#v39-0-1

* fix type hints

* remove outdated comments
2023-02-08 11:17:44 -08:00
23090198bf Configuration File Update w/o Certificate Issuance (#9355)
* Add command to update config files without issuing/renewing cert

* toss up a vague untested skeleton

* remove duplicated code

* set certname in config

* consistent name, no zope

* import copy

* reconsitute is in renewal

* import renewal

* import cli

* fix lint errors

* call choose_configurator_plugins for its side effect of writing to config

* Set certonly in choose config plugins as we do for renew

* rewrite by piggybacking on existing side effects of a dry run instead

* do not allow domains to be set while reconfiguring

* remove unused cert_manager.reconfigure

* remove unused imports

* Add comments and messages

* add cli information

* start adding tests

* remove test code

* get certname before setting up plugins

* get plugin from lineage if not set on cli

* import copy

* always reconstitute

* only load cert once

* add error message

* improve comment

* mock everything out for tests

* test functionality is working!

* add tests for adding and modifying hooks

* test that we don't modify the config if the dry run fails

* improve documentation

* add webroot to reconfigure common options

* lint and clean up intermediate artifacts

* mock validate_hooks for windows

* print success message with updated parameters

* Improve success message

* add message for no changes have been made

* improve changed message to show before as well

* syntax

* Add changes will apply at the next renewal message

* lint

* lint really likes dict.items() for some reason

* run the deploy hook

* turn off dry run to test deploy hook

* patch list_hooks call for tests

* factor out reporting results code

* Remove reporting of which values were changed

* add flag to run deploy hook despite doing a dry run, and recommend setting that to yes when running reconfigure and modifying the deploy hook

* missing () around multi-line string

* test if the two dicts are equal instead of finding the actual changes, thus avoiding having to deal with webroot_map being a list

* refer to --deploy-hook instead of deploy hook

* use renewal configuration instead of configuration information

* mention that the deploy hook will use the active cert not the test one

* disable lint and remove new from language asking about running a deploy hook

* pluralize run deploy hook(s)

* Add test for reporting results when there is a webroot map

* update changelog

* Update error message about modifying domains on the certificate

* update changelog

* Add basic integration tests

* Just set -a rather than redoing the whole testing infrastructure

* used webroot in integration test since it's already installed

* file contents are accessed twice now

---------

Co-authored-by: Alex Zorin <alex@zorin.au>
2023-02-04 08:46:08 +11:00
alexzorinandGitHub 724635bbbd docs: generate a man page with a structure (#9561)
If you looked at [the Debian man page for Certbot](https://manpages.debian.org/bullseye/certbot/certbot.1.en.html) or [the FreeBSD one](https://man.freebsd.org/cgi/man.cgi?query=certbot&sektion=1&apropos=0&manpath=FreeBSD+13.1-RELEASE+and+Ports), you will notice that the entire document is in the "NAME" section. It looks weird in particular on the [FreeBSD man page listing](https://man.freebsd.org/cgi/man.cgi?query=certbot&apropos=1&sektion=0&manpath=FreeBSD+13.1-RELEASE+and+Ports&arch=default&format=html).

This PR adds some structure to the man page by adding a new "Synopsis" section (lifted from the Certbot snap's synopsis) and shoving the `certbot --help all` output into a new "Options" section. I think this should be sustainable for us, without having to worry about the man page in particular.

Fixes #9560.
2023-02-03 11:35:15 -08:00
71a14f5193 Fix docs google permissions (#9556)
* include project level IAM requirements

* add name to authors.md

* Update certbot-dns-google/certbot_dns_google/__init__.py

Co-authored-by: alexzorin <alex@zorin.au>

* Update certbot-dns-google/certbot_dns_google/__init__.py

Co-authored-by: alexzorin <alex@zorin.au>

* Update certbot-dns-google/certbot_dns_google/__init__.py

Co-authored-by: alexzorin <alex@zorin.au>

---------

Co-authored-by: Daniel McMahon <daniel@igloocontrols.com>
Co-authored-by: alexzorin <alex@zorin.au>
2023-02-02 07:59:35 +11:00