Commit aaa4340a authored by Philipp Marek's avatar Philipp Marek
Browse files

Merge branch 'gitlab-ci' into 'master'

Add Gitlab CI

See merge request !25
parents ec87ecc0 ecac5bf1
Loading
Loading
Loading
Loading
Loading

.gitlab-ci.yml

0 → 100644
+27 −0
Original line number Diff line number Diff line
include:
  project: 'clci/gitlab-ci'
  ref: release/v2-dev
  file:
    - definitions.gitlab-ci.yml
    - test-pipeline.gitlab-ci.yml

variables:
  CLCI_INSTALL_QUICKLISP_CLIENT: "yes"
  # Off by default because it's proprietary and has a separate license.
  CLCI_TEST_ALLEGRO: "yes"
  # Off by default because the Docker image is a bit out of date, due to
  # upstream churn.
  CLCI_TEST_CLASP: "yes"
  # Alexandria is a non-commercial project, so we can use the express version
  # of Allegro for testing.
  I_AGREE_TO_ALLEGRO_EXPRESS_LICENSE: "yes"

# This section is not strictly required, but prevents Gitlab CI from launching
# multiple redundent pipelines when a Merge Request is opened.
workflow:
  rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
    - if: '$CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS'
      when: never
    - if: '$CI_COMMIT_BRANCH'
    - if: '$CI_COMMIT_TAG'
+8 −4
Original line number Diff line number Diff line
@@ -6,7 +6,11 @@
  :components ((:file "alexandria-1/tests")
               (:file "alexandria-2/tests"))
  :perform (test-op (o c)
             (let ((unexpected-failure-p nil))
               (flet ((run-tests (&rest args)
                      (apply (intern (string '#:run-tests) '#:alexandria-tests) args)))
                        (unless (apply (intern (string '#:run-tests) '#:alexandria-tests) args)
                          (setf unexpected-failure-p t))))
                 (run-tests :compiled nil)
               (run-tests :compiled t))))
                 (run-tests :compiled t))
               (when unexpected-failure-p
                 (error "Unexpected test failure")))))

scripts/ci-test.lisp

0 → 100644
+5 −0
Original line number Diff line number Diff line
;; Install all the deps
(ql:quickload "alexandria-tests")

;; Run the tests!
(asdf:test-system "alexandria")