Commit graph

64 commits

Author SHA1 Message Date
Erica Portnoy
3a1cd90ded matrix correcter 2026-04-15 12:02:57 -07:00
Erica Portnoy
3a8b5a1c50 match names 2026-04-15 11:52:46 -07:00
Erica Portnoy
e0738908e4 no dashes 2026-04-15 11:51:03 -07:00
Erica Portnoy
01bde3e7c0 quote github output 2026-04-15 11:49:53 -07:00
Erica Portnoy
62893b52ff only necessary items 2026-04-15 11:47:50 -07:00
Erica Portnoy
5355726837 syntax correcter 2026-04-15 11:45:42 -07:00
Erica Portnoy
18a6e263e2 new syntax 2026-04-15 11:39:44 -07:00
Erica Portnoy
ceb676eb94 match input and output names 2026-04-15 11:33:15 -07:00
Erica Portnoy
09ddd63cf7 echo quotes 2026-04-15 11:30:55 -07:00
Erica Portnoy
3ee6c5b7ea skip the github not azure tests lol 2026-04-15 11:25:42 -07:00
Erica Portnoy
44efbfa9cb add checkout step 2026-04-15 11:18:30 -07:00
Erica Portnoy
ae7ada2d70 update dep name 2026-04-15 11:15:57 -07:00
Erica Portnoy
0012f8932c fix spacing 2 2026-04-15 11:13:55 -07:00
Erica Portnoy
6999609eaa fix spacing 2026-04-15 11:12:59 -07:00
Erica Portnoy
7b3fa12867 skip docker tests 2026-04-15 11:10:49 -07:00
Erica Portnoy
1874639ed9 build and test dns snaps 2026-04-15 11:09:26 -07:00
Erica Portnoy
2bf6f782f0 migrate advanced tests to github actions
credentials for launchpad may or may not be working.
2026-03-24 11:20:58 -07:00
Erica Portnoy
1ad13663be add slightly nicer label 2026-03-23 18:00:54 -07:00
Erica Portnoy
5578659dc4 user newer versions of standard actions to get rid of node deprecation warning 2026-03-23 18:00:54 -07:00
Erica Portnoy
54b0b64e58 cancel runs when a new commit is pushed to a pr branch 2026-03-23 18:00:54 -07:00
Erica Portnoy
8c190b8e92 add nicer names 2026-03-23 18:00:54 -07:00
Erica Portnoy
22ee76066b split into setup/run/upload 2026-03-23 18:00:54 -07:00
Erica Portnoy
ed1f31721b remove tox steps workflow, that won't work 2026-03-23 18:00:54 -07:00
Erica Portnoy
095db25502 stop failing fast 2026-03-23 18:00:54 -07:00
Erica Portnoy
8f6a6af21e run all jobs even if one fails 2026-03-23 18:00:54 -07:00
Erica Portnoy
0a0cdcc4a0 add eof newlines
pass secrets and env vars

set minimum permissions

move permissions to job level, switch to contents read

change name to AWS_TEST_FARM_PEM for consistency

move comments, remove azure pipelines on-pr file

match permissions

remove runs-on: self-hosted. why was that even there?

add shell:bash

the auto-converted decided python 3.1 == 3.10. come on.

put python version in quotes

move python version to matrix

copy from matrix into env

matrix must take a list

update matrix syntax

remove composite

put composite back
2026-03-23 18:00:52 -07:00
ohemorange
d77fbe5887 Add workflow certbot/pr-test-suite
Add composite action azure_pipelines_templates_steps_tox_steps

Add composite action azure_pipelines_templates_steps_sphinx_steps

Add reusable workflow azure_pipelines_templates_jobs_standard_tests_jobs

rename files
2026-03-23 18:00:50 -07:00
Brad Warren
e9050f1a3c
dynamically determine base branch name in mattermost notifications (#10496)
previously, if we merged a PR into one of our point release branches,
the mattermost notification would still say it was merged into main.
this PR fixes that

you can see me testing this change on my fork with this [workflow
file](https://github.com/bmw/letsencrypt/actions/runs/19588662936/workflow#L30)
and this
[output](https://github.com/bmw/letsencrypt/actions/runs/19588662936/job/56102625766#step:2:4)

if this PR is merged, i'll do the same thing in our josepy repo
2025-11-24 13:42:14 -08:00
Brad Warren
b02deb339a
update actions in response to pull_request_target concerns (#10490)
this pr is in response to https://words.filippo.io/compromise-survey/.
ohemorange and i read this late on a friday to (speaking for myself at
least) much panic as it has some very strong words to say about the
github actions trigger pull_request_target which we use. looking into
the issue more, i also found that the popular static analysis tool
[zizmor](https://github.com/zizmorcore/zizmor) flags any github actions
workflow that uses the pull_request_target trigger with the message:

```
error[dangerous-triggers]: use of fundamentally insecure workflow trigger
pull_request_target is almost always used insecurely
```

this only added to my concern

the general problem with pull_request_target is that it runs with
additional privileges (e.g. potential write access, access to secrets)
in an environment containing values that can be set by an attacker.
these values include things such as references to the arbitrary code
contained in the triggering pr and pr titles which have been used to
perform shell injection attacks. not carefully treating these values
like the untrusted data it is while executing code in the privileged
environment given to pull_request_target has resulted in many supply
chain attacks

that's not to say that pull_request_target CAN'T be used securely.
zizmor even has [an
issue](https://github.com/zizmorcore/zizmor/issues/1168) brainstorming
how to not warn about all uses of the trigger as some are clearly fine
and the only way to accomplish what the user wants. i'm going to argue
that our uses of the trigger are ok

looking through the links provided by filippo's blog and [zizmor's
docs](https://docs.zizmor.sh/audits/#dangerous-triggers), i think we can
break down attacks used against pull_request_target into roughly 2
categories:

1. shell injection: "Nx S1ingularity" and "Ultralytics" from filippo's
blog
2. checking out and running a PR's code: "Kong Ingress Controller" and
"Rspack" from filippo's blog and https://ptrpa.ws/nixpkgs-actions-abuse
from zizmor docs

i think none of our pull_request_target workflows have these problems.
none of them use a shell (the [zizmor
issue](https://github.com/zizmorcore/zizmor/issues/1168) i linked
earlier suggests that any pull_request_target workflow that uses a run
block should always be flagged as insecure). instead, our workflows just
call action-mattermost-notify which can be [pretty easily
audited](https://github.com/mattermost/action-mattermost-notify/blob/2.0.0/src/main.js)
(as all the other files in the repo are boilerplate). passing possible
attacker controlled values directly to an action written in another
language is one of the approaches for mitigating script injection
[recommended by
github](https://docs.github.com/en/actions/reference/security/secure-use#use-an-action-instead-of-an-inline-script).
our workflows also do not check out the triggering pr's code

despite all that, i took this opportunity to cleanup and harden things a
bit. i reduced the permissions for each workflow and confirmed they each
still work on my fork. i also pinned the mattermost action to an exact
version and added some inline documentation

with these changes, our github workflows trigger few to no
warnings/errors when checked with zizmor,
[octoscan](https://github.com/synacktiv/octoscan), and [openssf
scorecard](https://github.com/ossf/scorecard)

if this pr is approved, i'll make similar changes to our josepy repo
2025-11-20 15:09:06 -08:00
ohemorange
6ee19bac55
Allow notification of two reviewers being assigned to a PR and two issue assignees (#10345)
Fixes https://github.com/certbot/certbot/issues/10344

You can see this working in the mattermost "Test" channel, where I ran
this code from my test repo.

The documentation for the PR reviewer syntax is here:
https://docs.github.com/en/webhooks/webhook-events-and-payloads?actionType=review_requested#pull_request

We now no longer notify on PR assignees. But I think that is the correct
behavior.

This PR also fixes a bug in the issue assigned notification code, and
now lets you see when two different people were assigned. That
documentation is here:
https://docs.github.com/en/webhooks/webhook-events-and-payloads#

After this is in, I'll make the same changes to the josepy repo.

You can see the `if` syntax here:
https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows

```
on:
  pull_request:
    types: [review_requested]
jobs:
  specific_review_requested:
    runs-on: ubuntu-latest
    if: ${{ github.event.requested_team.name == 'octo-team'}}
    steps:
      - run: echo 'A review from octo-team was requested'
```

---------

Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2025-06-23 17:08:21 +00:00
Brad Warren
4cffcbffaa
use-pr-target 2025-03-05 08:19:10 -08:00
Alexis
d3aceba188
[TOOLING] Add Automation for When a PR or Issue is Assigned (#10191)
Adding automation for team triage meetings for when PRs or Issues are
assigned. You can see an example in the "Test" channel.

---------

Co-authored-by: ohemorange <erica@eff.org>
2025-02-14 14:58:00 -08:00
Alexis
2ae7f83e2a
[REPO] Modify Stalebot Labels for Better Filters (#10171)
- Better labels upon an issue going stale will help triage better. There
other PRs with "needs update" that are manually put and therefore we
can't explicitly filter for stalebot.
- For management purposes, being able to view how many issues are
auto-closed helps as well.
2025-01-31 15:23:10 -08:00
Brad Warren
94dcf25f6e
notify about PRs from forks (#10101) 2025-01-15 17:19:25 -08:00
Alexis
86694397a6
Update notify_weekly.yaml (#10118)
Making the weekly message a little more useful.

---------

Co-authored-by: Brad Warren <bmw@users.noreply.github.com>
2025-01-13 07:46:12 -08:00
Brad Warren
c54f99e35b
mattermost/action-mattermost-notify still uses master (#10021) 2024-10-04 14:08:25 -07:00
Will Greenberg
84c8dbc52a Migrate master branch to main
We're a few years behind the curve on this one, but using "master" as a
programming term is a callous practice that explicitly uses the
historical institution of slavery as a cheap, racist metaphor. Switch to
using "main", as it's the new default in git and GitHub.
2024-09-26 14:48:10 -07:00
ohemorange
018800c5cc
specify channel in weekly mm message (#10013) 2024-09-16 12:31:52 -07:00
Brad Warren
2eb4154169
allow manually triggering GH actions (#10015) 2024-09-16 12:16:51 -07:00
ohemorange
6975e32998
Fix weekly mattermost notifier (#10009) 2024-09-11 11:11:47 -07:00
Brad Warren
62962357c5
add parenthesis (#10008) 2024-09-10 13:06:48 -07:00
ohemorange
343b540970
Use new mattermost action workflow (#10007) 2024-09-10 12:53:21 -07:00
ohemorange
089b7efacd
Update syntax for mattermost webhooks (#10006) 2024-09-10 12:16:53 -07:00
Alexis
2cb2cb0575
Update merged.yaml 2023-07-24 12:11:40 -07:00
Brad Warren
35209d921d
bump stale limit (#9691) 2023-05-09 17:06:47 -07:00
Brad Warren
dc05b4da7a
Increase stale operations per run (#9668)
* increase operations per run

* update comment
2023-04-13 09:18:24 +10:00
Brad Warren
6a666b0323 increase stale frequency 2023-03-23 10:11:20 -07:00
Will Greenberg
7a6752a68e
Merge pull request #9601 from certbot/yaml/merge-notifications
Create Workflow for Merge Notifications
2023-03-08 14:07:53 -08:00
Alexis
40486f3ab4
Fix indentation error 2023-03-08 09:22:17 -08:00
Alexis
6c22e29875
Update to include sanitization for JSON file 2023-03-07 12:42:39 -08:00