# https://github.com/jonashackt/gitlab-ci-stack#configure-gitlab-runner-with-shell-executor
# https://github.com/jonashackt/gitlab-ci-shell-example

stages:
  - readme
  - test
  - publish
  - cleanup

before_script:
  - docker info
  - ls -ahl && ls -ahl *

readme:
  stage: readme
  tags:
    - shell
  script:
    - source .gitlab/.readme_variables
    - echo ""
    - echo ""
    - echo $LOGO_IMAGE_LINK
    - echo $GITHUB_REPONAME
    - echo $GITHUB_USERNAME
    - echo $DOCKERHUB_REPONAME
    - echo $DOCKERHUB_TAG
    - echo $DOCKERHUB_USERNAME
    - echo $DESCRIPTION
    - echo $CREATOR_USERNAME
    - echo $CREATOR_REPONAME
    - echo $EXAMPLE_SITE_LINK
    - echo $EXAMPLE_IMAGE_LINK
    - echo $CONTAINER_PORT
    - echo $CONTAINER_PORT2
    - echo $BASE_IMAGE
    - echo ""
    - echo ""
    - envsubst < .gitlab/readme_template | less
    - envsubst < .gitlab/readme_template > /home/gitlab-runner/READMEs/$CI_PROJECT_NAME/README.md
    - echo ""

test_1:
  stage: test
  tags:
    - shell
  script:
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
    - docker build --tag $CI_REGISTRY_IMAGE:arm .
    - docker push $CI_REGISTRY_IMAGE:arm

publish_1:
  stage: publish
  tags:
    - shell
  script:
    - docker login -u $DOCKER_USER -p $DOCKER_PASSWORD $DOCKER_REGISTRY
    - docker build --tag $DOCKER_USER/$DOCKER_REPO:arm .
    - docker push $DOCKER_USER/$DOCKER_REPO:arm
    - docker system prune --all --force

cleanup:
  stage: cleanup
  tags:
    - shell
  script:
    - rm -rf * .dockerignore .github .gitignore .gitlab
    - ls -ahl