image: "debian:unstable"
stages:
  - build

.build:
  image: debian:stable-slim
  stage: build
  before_script:
    - apt update && apt install -y make wget git emacs sudo gnutls-bin
    - git clone -b $CI_COMMIT_REF_NAME https://gitlab.com/FG42/FG42 ~/.fg42/ && cd ~/.fg42/ && make install &&
  script:
    - cd ~/.fg42/ && fg42 -nw --script build.el

build-branches:
  extends: .build
  script:
    - cd /root/.fg42/ && fg42 -nw --script build.el
    - cd /root/ && tar zcf ~/fg42.$CI_COMMIT_REF_NAME.tar.gz .fg42/
    - mv ~/fg42.$CI_COMMIT_REF_NAME.tar.gz /builds/$CI_PROJECT_PATH/
  artifacts:
    name: "fg42.$CI_COMMIT_REF_SLUG"
    when: on_success
    paths:
    - fg42.$CI_COMMIT_REF_NAME.tar.gz
  only:
    - branches

build-package:
  extends: .build
  script:
    - cd /root/.fg42/ && fg42 -nw --script build.el
    - cd /root/ && tar zcf ~/fg42.$CI_COMMIT_TAG.tar.gz .fg42/
    - mv ~/fg42.$CI_COMMIT_TAG.tar.gz /builds/$CI_PROJECT_PATH/
  artifacts:
    name: "fg42.$CI_COMMIT_TAG"
    when: on_success
    paths:
    - fg42.$CI_COMMIT_TAG.tar.gz
  only:
    - tags
