SSH and GPG Keys With Gitpod
Dhananjay Tanpure
Posted on December 27, 2021
Get Your .gitconfig
- Your Git Config is located at ~/.gitconfig
- Encode the File with base64:
cat .gitconfig | base64 -w 0
- Create a variable on gitpod.
- Enter Name GITCONFIG.
- Enter output of previous command as Value.
- Add following task to your .gitpod.yml:
tasks:
- before: >
[[ ! -z $GITCONFIG ]] &&
echo $GITCONFIG | base64 -d > ~/.gitconfig &&
chmod 644 ~/.gitconfig
Make commits GPG-signed
- To sign commit using GPG you must first add GPG keys to Github and/or Gitlab.
- Your GPG Keys are stored in ~/.gnupg folder. Encode this folder with base64.
tar -czf - ~/.gnupg | base64 -w 0
-
Create a variable on gitpod.
- Enter Name GNUPG.
- Enter output of previous command in Value.
- Add following task to your .gitpod.yml:
tasks:
- before: >
[[ ! -z $GNUPG ]] &&
cd ~ &&
rm -rf .gnupg &&
echo $GNUPG | base64 -d | tar --no-same-owner -xzf -
SSH Github and Gitlab from gitpod
- Add SSH Keys to Github and/or Gitlab
- Get your SSH Public Key from id_rsa.pub:
- Create a variable on gitpod.
- Enter Name SSH_PUBLIC_KEY.
- Paste the contents of file in Value.
- Get your SSH Public Key from id_rsa:
- Create a variable on gitpod.
- Enter Name SSH_PRIVATE_KEY.
- Encode the File id_rsa with base64.
cat id_rsa | base64 -w 0
- Paste the output of previous command in Value.
- Add Following tasks to your .gitpod.yml:
tasks:
- before: >
mkdir -p ~/.ssh &&
[[ ! -z $SSH_PUBLIC_KEY ]] &&
echo $SSH_PUBLIC_KEY > ~/.ssh/id_rsa.pub &&
chmod 644 ~/.ssh/id_rsa.pub &&
[[ ! -z $SSH_PRIVATE_KEY ]] &&
echo $SSH_PRIVATE_KEY | base64 -d > ~/.ssh/id_rsa &&
chmod 600 ~/.ssh/id_rsa
Thank You!
๐ ๐ช ๐
๐ฉ
Dhananjay Tanpure
Posted on December 27, 2021
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.