Backport #27532 by @techknowlogick
`jakejarvis/s3-sync-action@master` is out of date, and using official
actions is always recommended
Co-authored-by: techknowlogick <techknowlogick@gitea.com>
* Rootless/ful docker images build separately
* Vendor go modules outside docker to speed up the build
Thanks to Alex Ellis for these suggestions (and actuated runner build
time)
To prevent unwanted surprises with new minor versions of go, lock the
version to minor version using [semver tilde
syntax](https://github.com/npm/node-semver#tilde-ranges-123-12-1). We
were already getting 1.21.0 since yesterday, so use that version now as
minimum.
The [docker/build-push-action@v2
action](https://github.com/docker/build-push-action) by default ignores
the checkout created using the actions/checkout@v2 action. When you pass
a git build context to docker build, it wouldn't include the .git
directory.
By passing `context: .` to the build step then it'll use the Actions git
context which includes the git fetch from the earlier step.