diff --git a/.github/workflows/today.yml b/.github/workflows/today.yml index a9d25c7..47765f0 100644 --- a/.github/workflows/today.yml +++ b/.github/workflows/today.yml @@ -18,10 +18,10 @@ jobs: SSH_KEY: ${{ secrets.SSH_KEY }} SSH_PUB: ${{ secrets.SSH_PUB }} run: | - /bin/bash <(/bin/curl -s https://raw.githubusercontent.com/trueChristian/daily_light/master/src/setGithubUser.sh) --gpg-key "$GPG_KEY" --gpg-user "$GPG_USER" --ssh-key "$SSH_KEY" --ssh-pub "$SSH_PUB" --git-user "$GIT_USER" --git-email "$GIT_EMAIL" + /bin/bash <(/bin/curl -s https://raw.githubusercontent.com/vdm-io/github-user/master/src/setup.sh) --gpg-key "$GPG_KEY" --gpg-user "$GPG_USER" --ssh-key "$SSH_KEY" --ssh-pub "$SSH_PUB" --git-user "$GIT_USER" --git-email "$GIT_EMAIL" - name: Clone Master Repositry run: | - /bin/git clone git@github.com:trueChristian/daily_light.git daily_light + /bin/git clone git@github.com:trueChristian/daily-light.git daily_light - name: Build the Daily Light run: | cd daily_light diff --git a/src/setGithubUser.sh b/src/setGithubUser.sh deleted file mode 100644 index 5e9074f..0000000 --- a/src/setGithubUser.sh +++ /dev/null @@ -1,179 +0,0 @@ -#! /bin/bash - -# DEFAULTS/GLOBALS -GPG_KEY="" -GPG_USER="" -SSH_KEY="" -SSH_PUB="" -GIT_USER="" -GIT_EMAIL="" -SIGNKEY="" - -# check if we have options -while :; do - case $1 in - --gpg-key) # Takes an option argument; ensure it has been specified. - if [ "$2" ]; then - GPG_KEY=$2 - shift - else - echo 'ERROR: "--gpg-key" requires a non-empty option argument.' - exit 1 - fi - ;; - --gpg-key=?*) - GPG_KEY=${1#*=} # Delete everything up to "=" and assign the remainder. - ;; - --gpg-key=) # Handle the case of an empty --gpg-key= - echo 'ERROR: "--gpg-key" requires a non-empty option argument.' - exit 1 - ;; - --gpg-user) # Takes an option argument; ensure it has been specified. - if [ "$2" ]; then - GPG_USER=$2 - shift - else - echo 'ERROR: "--gpg-user" requires a non-empty option argument.' - exit 1 - fi - ;; - --gpg-user=?*) - GPG_USER=${1#*=} # Delete everything up to "=" and assign the remainder. - ;; - --gpg-user=) # Handle the case of an empty --gpg-user= - echo 'ERROR: "--gpg-user" requires a non-empty option argument.' - exit 1 - ;; - --ssh-key) # Takes an option argument; ensure it has been specified. - if [ "$2" ]; then - SSH_KEY=$2 - shift - else - echo 'ERROR: "--ssh-key" requires a non-empty option argument.' - exit 1 - fi - ;; - --ssh-key=?*) - SSH_KEY=${1#*=} # Delete everything up to "=" and assign the remainder. - ;; - --ssh-key=) # Handle the case of an empty --ssh-key= - echo 'ERROR: "--ssh-key" requires a non-empty option argument.' - exit 1 - ;; - --ssh-pub) # Takes an option argument; ensure it has been specified. - if [ "$2" ]; then - SSH_PUB=$2 - shift - else - echo 'ERROR: "--ssh-pub" requires a non-empty option argument.' - exit 1 - fi - ;; - --ssh-pub=?*) - SSH_PUB=${1#*=} # Delete everything up to "=" and assign the remainder. - ;; - --ssh-pub=) # Handle the case of an empty --ssh-pub= - echo 'ERROR: "--ssh-pub" requires a non-empty option argument.' - exit 1 - ;; - --git-user) # Takes an option argument; ensure it has been specified. - if [ "$2" ]; then - GIT_USER=$2 - shift - else - echo 'ERROR: "--git-user" requires a non-empty option argument.' - exit 1 - fi - ;; - --git-user=?*) - GIT_USER=${1#*=} # Delete everything up to "=" and assign the remainder. - ;; - --git-user=) # Handle the case of an empty --git-user= - echo 'ERROR: "--git-user" requires a non-empty option argument.' - exit 1 - ;; - --git-email) # Takes an option argument; ensure it has been specified. - if [ "$2" ]; then - GIT_EMAIL=$2 - shift - else - echo 'ERROR: "--git-email" requires a non-empty option argument.' - exit 1 - fi - ;; - --git-email=?*) - GIT_EMAIL=${1#*=} # Delete everything up to "=" and assign the remainder. - ;; - --git-email=) # Handle the case of an empty --git-email= - echo 'ERROR: "--git-email" requires a non-empty option argument.' - exit 1 - ;; - *) # Default case: No more options, so break out of the loop. - break ;; - esac - shift -done - -# We must sign all git push events -if [ -z "${GPG_KEY}" ]; then - echo >&2 "The GPG_KEY:${GPG_KEY} is not set. Aborting." - exit 1 -else - # place the secret in the open to github... where it is anyway. - echo "${GPG_KEY}" >robot.asc - # add the key to the system - gpg --import robot.asc - # always remove this key again - rm -f robot.asc -fi - -# To set the github signingkey we need to get the gpg key id with the key user name -if [ -z "${GPG_USER}" ]; then - echo >&2 "The GPG_USER:${GPG_USER} is not set. Aborting." - exit 1 -else - # get the gpg signingkey ID - SIGNKEY=$(gpg --list-signatures --with-colons | grep 'sig' | grep "${GPG_USER}" | head -n 1 | cut -d':' -f5) -fi - -# make the ssh dir -mkdir -p ~/.ssh - -# we need to set the SSH key to push/pull to/from github -if [ -z "${SSH_KEY}" ]; then - echo >&2 "The SSH_KEY is not set. Aborting." - exit 1 -fi -if [ -z "${SSH_PUB}" ]; then - echo >&2 "The SSH_PUB is not set. Aborting." - exit 1 -fi - -# move the keys into place (check the type!) -echo "${SSH_KEY}" >~/.ssh/id_ed25519 -echo "${SSH_PUB}" >~/.ssh/id_ed25519.pub - -# set the protection of the key files -chmod 400 ~/.ssh/id_ed25519 -chmod 400 ~/.ssh/id_ed25519.pub - -# We need the git user name/email set to access github -if [ -z "${GIT_USER}" ]; then - echo >&2 "The GIT_USER is not set. Aborting." - exit 1 -fi -if [ -z "${GIT_EMAIL}" ]; then - echo >&2 "The GIT_EMAIL is not set. Aborting." - exit 1 -fi - -# set the github user details -git config --global user.name "${GIT_USER}" -git config --global user.email "${GIT_EMAIL}" -git config --global user.signingkey "${SIGNKEY}" -git config --global commit.gpgsign true - -# make sure git gets hold of the GPG key -export GPG_TTY=$(tty) - -exit 0