Skip to content

fourdollars/dput-ppa-resource

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub: fourdollars/dput-ppa-resource License: MIT Bash Docker Docker Pulls

dput-ppa-resource

concourse-ci's dput-ppa-resource

It only supports the put step.

Config

Resource Type

resource_types:
- name: resource-dput-ppa
  type: registry-image
  source:
    repository: fourdollars/dput-ppa-resource
    tag: latest

or

resource_types:
- name: resource-dput-ppa
  type: registry-image
  source:
    repository: ghcr.io/fourdollars/dput-ppa-resource
    tag: latest

Resource

  • fingerprint: Required
  • passphrase: Required
  • private_key: Required
  • ppa: Optional. You can provide it later in the put step.
resources:
- name: dput
  icon: package-up
  type: resource-dput-ppa
  source:
    ppa: ppa:username/ppa-name
    fingerprint: FingerprintOfGPGKey
    passphrase: PassphraseOfGPGPrivateKey
    private_key: |
    -----BEGIN PGP PRIVATE KEY BLOCK-----
    ...
    ...
    ...
    -----END PGP PRIVATE KEY BLOCK-----

put step

  • path: Required. Specify a path and all *_source.changes under that path will be signed and dput into the PPA.
  • ppa: Optional. You can provide it earlier in the resources.
- put: dput
  params:
    ppa: ppa:username/ppa-name
    path: SomeFolderInTask
# It acts like the following commands.
$ echo "$private_key" > private.key
$ echo "$passphrase" | gpg --passphrase-fd 0 --pinentry-mode loopback --import private.key
$ rm private.key
$ find "$path" -name '*_source.changes' | while read -r package; do
> echo "$passphrase" | debsign -p'gpg --passphrase-fd 0 --pinentry-mode loopback' -S -k"$fingerprint" "$package"
> dput "$ppa" "$package"
> done