﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	launchpad_bug
3944	GitHub Actions workflow upkeep	sajith	sajith	"Each run of !GitHub Actions with the current configuration emits many warnings about deprecations. Consider this workflow run, for example:

https://github.com/tahoe-lafs/tahoe-lafs/actions/runs/3533138743

There are a 100 warnings, mostly duplicates.  The warnings are due to:

 - Node.js 12 actions are deprecated. It seems that actions/checkout@v2, actions/setup-python@v2, actions/cache@v2, actions/upload-artifact@v2 all use older Node.js. They are all probably due for an upgrade.
 - `set-output` and `save-state` commands are deprecated and will be disabled soon.  This is from the pip caching steps; we can simply remove that and use the equivalent feature available in newer version of `actions/setup-python.

While we are on this, it probably is a good idea to stick this incantation in the workflow file so that the `GITHUB_TOKEN` issued at the beginning of the workflow will have a minimum set of permissions:

{{{
permissions: 
  contents: read
}}}

Relevant !GitHub docs are [https://docs.github.com/en/actions/security-guides/automatic-token-authentication Automatic token authentication] and [https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions Workflow syntax for GitHub Actions: permissions].

I understand that GH Actions do not get a lot of love from Tahoe-LAFS team, and some of us would love to throw the thing away entirely. However, as long as Tahoe-LAFS uses GH Actions, it is a good idea to do the minimum upkeep."	task	closed	normal	undecided	dev-infrastructure	n/a	fixed			
