Регистрируемся на launchpad.net и создаем ppa
Если еще нет учетки на Ubuntu One или Launchpad.net, то идем на https://login.launchpad.net и регистрируемся и логинимся.
Теперь Создаем новый проект на launchpad - https://launchpad.net/projects/+new .
На первом этапе - вводим Имя проекта и краткое описание.
Затем - Launchpad услужливо спросит, нет ли подобного проекта среди уже существующих - отвечаем No, this is a new project.
Ну и заполняем то что он спросит - там не сложно.
Дальше - на своей страничке (URL - https://launchpad.net/~{USERNAME}) жмем Create a new PPA (или идем по ссылке типа https://launchpad.net/~{USERNAME}/+activate-ppa)
Генерация ключа pgp
Делаем как написано тут: https://help.ubuntu.com/community/GnuPrivacyGuardHowto
gpg --gen-key
Вводим имя и e-mail, затем - пароль и получаем ключ.
В выводе будет что-то такое:
pub rsa3072 2021-06-19 [SC] [expires: 2023-06-19] B7569B57852DF8B47BFE5D7D3DC913AE67653CD3
А именно - fingreprint ключа - B7569B57852DF8B47BFE5D7D3DC913AE67653CD3. У вас он будет другой.
Теперь делаем его ключем по-умолчанию. Для этого редактируем ~/.bash_profile и прописываем там fingreprint ключа:
export GPGKEY=B7569B57852DF8B47BFE5D7D3DC913AE67653CD3
Ну и для работы в текущей локальной сессии выполним:
export GPGKEY=B7569B57852DF8B47BFE5D7D3DC913AE67653CD3
Загрузим ключ на сервер:
gpg --send-keys --keyserver keyserver.ubuntu.com $GPGKEY
Добавим ключ в PPA: https://launchpad.net/~~{USERNAME}/+editpgpkeys и там то самое $GPGKEY.
В результате - на почту придет сообщение зашифрованное данным ключем, которое нужно расшифровать и перейти поссылке.
Для этого - открывам письмо, ищем текст, который начинается примерно так:
-----BEGIN PGP MESSAGE----- Version: GnuPG v1 hQGMAwlc3LxvNLEXAQwAnPnvIBNfGsY6cOkbc+MIHYFoMJknmRRICXEkwMbdmwoC FFpq7LTzMmDWzleelg/XGJBEfnLs8aVsSgfDPqg2LCBEXRxOjCG7+COohDBHq1cN ....
И подствляем его в команду:
echo '-----BEGIN PGP MESSAGE----- Version: GnuPG v1 hQGMAwlc3LxvNLEXAQwAnPnvIBNfGsY6cOkbc+MIHYFoMJknmRRICXEkwMbdmwoC FFpq7LTzMmDWzleelg/XGJBEfnLs8aVsSgfDPqg2LCBEXRxOjCG7+COohDBHq1cN ... wfa+c9quFl6ZBBFfAlteXi4ZqeVTLkuZdCqRcmlAxANyu4hpKytwMk0TnYXpdCZ8 TKrP/pWEVB/wrRt60ZKPNv/dShoHiyiuCgQxapWIKOfNS5Vh1tnoQJmfCD4xUn0a KfXT8528u6o= =5CDZ -----END PGP MESSAGE-----' | gpg --decrypt
Вводим пароль от ключа и получаем текст письма, в котором - ссылка вида: https://launchpad.net/token/H4Mvs.... Переходим по ней изавершаем добавление ключа - жмем Continue.
Добавление ключа в GitHub Actions
https://github.com/marketplace/actions/import-gpg
Извлечем закрытый ключ:
gpg --armor --export-secret-key kind.devops@gmail.com -w0
Чтобы добавить ключ GPG в проект и использовать его при публикации - идем в проект на GitHub → Settings → Secrets → New Repository Secret и создаем пару секретов - GPG_PRIVATE_KEY и GPG_PASSPHRASE соответственно с приватным ключем и паролем.
Discussion