[FEATURE] Allow pushing sub-directory for keys

Checklist

NOTE: This bug template is meant to provide bug issues for code existing in the aurweb repository.

This bug template is not meant to handle bugs with user-uploaded packages. To report issues you might have found in a user-uploaded package, contact the package's maintainer in comments.

  • I have summed up the feature in concise words in the Summary section.
  • I have completely described the feature in the Description section.
  • I have completed the Blockers section.

Summary

Allow pushing sub-directory if the name is 'keys' and it contains a sub-directory with name 'gpg' and each file under it is a GPG public key.

Description

Describe your feature in full detail.

Packages coming from official repositories usually have PGP keys next to the PKGBUILD. These are not is use yet but the plan is to use them during build with the official tooling (see man pkgctl) to verify signed commits or tarballs. So instead of stripping them when something is dropped to AUR just allow these to be included to the AUR package repo.

Scope:

  • 0 level directory name = keys
  • 1 level directory name = pgp
  • 2 level direttory contains:
    • each filename extension = .asc
    • [Optional] validate each filename is a GPG key Example for wlc package
➜ tree wlc
wlc
├── PKGBUILD
├── keys
│   └── pgp
│       ├── 9DDA3B9FA5D58DD5392C78E652CB6609B22DA89A.asc
│       └── C2AA3C3A6F9B1F932014879EF769BB961AF6D26A.asc
└── wlc-missing-header.patch

3 directories, 4 files

Blockers

Needs some testing if there's a problem with git namespaces containing directories