diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ade86281e160f520cd414867df5063c906d94828..90c0af1cbb3787a4f98853a621cab6c17f1b934a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,6 @@ stages: - check + - github default: tags: [docker] @@ -25,3 +26,45 @@ check: script: - if [[ $NOT_CRAN == "false" ]]; then sudo apt-get update && sudo apt-get install -y qpdf; fi - R -e 'rcmdcheck::rcmdcheck(args = "--no-manual", error_on = "warning")' + +github: + stage: github + only: + refs: + - master + - tags + before_script: + ## + ## Install ssh-agent if not already installed, it is required by Docker. + ## (change apt-get to yum if you use an RPM-based image) + ## + - 'command -v ssh-agent >/dev/null || ( apt-get update -y && apt-get install openssh-client -y )' + + ## + ## Run ssh-agent (inside the build environment) + ## + - eval $(ssh-agent -s) + + ## + ## Add the SSH key stored in SSH_PRIVATE_KEY variable to the agent store + ## We're using tr to fix line endings which makes ed25519 keys work + ## without extra base64 encoding. + ## https://gitlab.com/gitlab-examples/ssh-private-key/issues/1#note_48526556 + ## + - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - + + ## + ## Create the SSH directory and give it the right permissions + ## + - mkdir -p ~/.ssh + - chmod 700 ~/.ssh + + ## + ## Optionally, if you will be using any Git commands, set the user name and + ## and email. + ## + - git config --global user.email "gitlab@inrae.fr" + - git config --global user.name "Gitlab CI" + script: + - git remote add github https://github.com/inrae/hubeau.git + - git push github ${CI_COMMIT_BRANCH}