Reconfigure the CI pipeline to deploy more static HTML content. 38/head
authorJason S. Ninneman <jsn@mbar.us>
Sat, 3 Jun 2017 20:13:49 +0000 (13:13 -0700)
committerJason S. Ninneman <jsn@mbar.us>
Sun, 4 Jun 2017 00:55:57 +0000 (17:55 -0700)
.gitlab-ci.yml
Makefile
index.adoc

index 1dcb6c1867340ff7762e95a3c8a358093f28b64a..935fa3f0a2bd92249919f1bda67894233b6b1d44 100644 (file)
@@ -6,13 +6,13 @@ stages:
   - deploy
 
 # build advent itself
   - deploy
 
 # build advent itself
-binary:
+binary:debug:
   stage: build
   before_script:
     - apk update
     - apk add make gcc musl-dev
   script: 
   stage: build
   before_script:
     - apk update
     - apk add make gcc musl-dev
   script: 
-    - make advent
+    - make debug
   artifacts:
     paths:
       - advent
   artifacts:
     paths:
       - advent
@@ -23,13 +23,28 @@ binary:
     paths:
       - "*.o"
 
     paths:
       - "*.o"
 
+binary:release:
+  stage: build
+  before_script:
+    - apk update
+    - apk add make gcc musl-dev
+  script: 
+    - make advent
+  artifacts:
+    paths:
+      - advent
+  # cache outputs to reduce the build time
+  cache:
+    paths:
+      - "*.o"
+
 manpage:
   stage: build
   before_script:
     - apk update
     - apk add make asciidoc
   script:
 manpage:
   stage: build
   before_script:
     - apk update
     - apk add make asciidoc
   script:
-    - make .asc.6
+    - make .adoc.6
   artifacts:
     paths:
       - advent.6
   artifacts:
     paths:
       - advent.6
@@ -40,13 +55,13 @@ html:
     - apk update
     - apk add make asciidoc libxslt
   script:
     - apk update
     - apk add make asciidoc libxslt
   script:
-    - make .asc.html
+    - make html
   artifacts:
     paths:
   artifacts:
     paths:
-      - advent.html
+      - "*.html"
 
 # run tests using the binary built before
 
 # run tests using the binary built before
-test:
+test:debug:
   stage: test
   before_script:
     - apk update
   stage: test
   before_script:
     - apk update
@@ -61,13 +76,32 @@ test:
   artifacts:
     paths:
       - coverage
   artifacts:
     paths:
       - coverage
+  dependencies:
+    - binary:debug
+
+test:release:
+  stage: test
+  before_script:
+    - apk update
+    - apk add make
+  script:
+    - cd tests
+    - make
+    - cd ..
+  dependencies:
+    - binary:release
 
 pages:
   stage: deploy
   script:
 
 pages:
   stage: deploy
   script:
+    - mkdir public
     - mv coverage public
     - mv coverage public
+    - "mv *.html public"
   artifacts:
     paths:
       - public
   only:
     - master
   artifacts:
     paths:
       - public
   only:
     - master
+  dependencies:
+    - html
+    - test:debug
index 0f7bd783b44cc790d61630ff590cd91ed902f66c..ba2c9ef318469c61fd5af169e75ce46c0443dfc3 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 # Makefile for the open-source release of adventure 2.5
 
 CC?=gcc
 # Makefile for the open-source release of adventure 2.5
 
 CC?=gcc
-CCFLAGS=-std=c99 -O0 --coverage
+CCFLAGS=-std=c99
 LIBS=
 UNAME_S := $(shell uname -s)
 ifeq ($(UNAME_S),Linux)
 LIBS=
 UNAME_S := $(shell uname -s)
 ifeq ($(UNAME_S),Linux)
@@ -68,3 +68,6 @@ release: advent-$(VERS).tar.gz advent.html
 
 refresh: advent.html
        shipper -N -w version=$(VERS) | sh -e -x
 
 refresh: advent.html
        shipper -N -w version=$(VERS) | sh -e -x
+
+debug: CCFLAGS += -O0 --coverage
+debug: advent
index ef29252edd9b9ed6ba8d45d69162ae6bb4b84c44..dacdf4427a8f1685cc1fc5d9a2123af243570a31 100644 (file)
@@ -14,4 +14,6 @@ You can read:
 
 * a file of link:hints.html[hints].  And these are hints, not spoilers.
 
 
 * a file of link:hints.html[hints].  And these are hints, not spoilers.
 
+* the latest link:coverage[code coverage analysis].
+
 // end
 // end