From 0dba42ce5368a5e3fd2964ae48ec57754b6397a8 Mon Sep 17 00:00:00 2001 From: Xavier Mitault Date: Tue, 19 Dec 2023 21:08:46 +0100 Subject: [PATCH] Fix CICD --- .github/workflows/documentation.yml | 19 ---------- .github/workflows/release.yml | 56 +++++++++++++++++++++-------- .github/workflows/tests.yml | 2 +- .gitignore | 3 ++ Makefile | 36 ++++++++----------- docs/Coverage.md | 1 - docs/SUMMARY.md | 2 -- docs/Tests.md | 1 - lvtc/stack.yaml.lock | 13 +++++++ lvtrun/stack.yaml.lock | 13 +++++++ 10 files changed, 87 insertions(+), 59 deletions(-) delete mode 100644 docs/Coverage.md delete mode 100644 docs/Tests.md create mode 100644 lvtc/stack.yaml.lock create mode 100644 lvtrun/stack.yaml.lock diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index ee2702f..af808f7 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -61,25 +61,6 @@ jobs: exit 0 fi - - name: Tests - if: steps.filter.outputs.docs == 'true' || steps.filter.outputs.docs2 == 'true' || steps.filter.outputs.workflow == 'true' || github.ref == 'refs/heads/main' - run: | - if ! stack test --test-arguments "--html book/Tests.html"; then - exit 0 - fi - - - name: Coverage - if: steps.filter.outputs.docs == 'true' || steps.filter.outputs.docs2 == 'true' || steps.filter.outputs.workflow == 'true' || github.ref == 'refs/heads/main' - run: | - if ! make tests-coverage; then - exit 0 - else - PATH_HTML=$(make tests-coverage-html-path) - cp -r "$PATH_HTML/koaky" book/ - cp -r "$PATH_HTML/combined" book/ - cp "$PATH_HTML/index.html" book/Coverage.html - fi - - name: Setup Pages if: github.ref == 'refs/heads/main' uses: actions/configure-pages@v3 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index df632a1..86779f2 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -59,14 +59,22 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | - gh release upload ${{ needs.release-create.outputs.release }} "./koaky-exe.exe#koaky-windows.exe" + gh release upload ${{ needs.release-create.outputs.release }} "./lvtc/lvtc-exe.exe#lvtc-windows.exe" + gh release upload ${{ needs.release-create.outputs.release }} "./lvtrun/lvtrun-exe.exe#lvtrun-windows.exe" - - name: Upload To Artifact + - name: Upload To Artifact lvtc if: github.ref != 'refs/heads/main' uses: actions/upload-artifact@v3 with: - name: koaky.exe - path: ./koaky.exe + name: lvtc-windows.exe + path: ./lvtc/lvtc-exe.exe + + - name: Upload To Artifact lvtrun + if: github.ref != 'refs/heads/main' + uses: actions/upload-artifact@v3 + with: + name: lvtrun-windows.exe + path: ./lvtrun/lvtrun-exe.exe release-linux: runs-on: ubuntu-latest @@ -89,21 +97,31 @@ jobs: run: make - name: Rename - run: mv koaky-exe koaky-linux + run: | + mv lvtc/lvtc-exe lvtc-linux + mv lvtrun/lvtrun-exe lvtrun-linux - name: Upload To Release if: github.ref == 'refs/heads/main' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | - gh release upload ${{ needs.release-create.outputs.release }} "./koaky-linux" + gh release upload ${{ needs.release-create.outputs.release }} "./lvtc-linux" + gh release upload ${{ needs.release-create.outputs.release }} "./lvtrun-linux" + + - name: Upload To Artifact lvtc + if: github.ref != 'refs/heads/main' + uses: actions/upload-artifact@v3 + with: + name: lvtc-linux + path: ./lvtc-linux - - name: Upload To Artifact + - name: Upload To Artifact lvtrun if: github.ref != 'refs/heads/main' uses: actions/upload-artifact@v3 with: - name: koaky-linux - path: ./koaky-linux + name: lvtrun-linux + path: ./lvtrun-linux release-macos: runs-on: macos-latest @@ -126,18 +144,28 @@ jobs: run: make - name: Rename - run: mv koaky-exe koaky-macos + run: | + mv lvtc/lvtc-exe lvtc-macos + mv lvtrun/lvtrun-exe lvtrun-macos - name: Upload To Release if: github.ref == 'refs/heads/main' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | - gh release upload ${{ needs.release-create.outputs.release }} "./koaky-macos" + gh release upload ${{ needs.release-create.outputs.release }} "./lvtc-macos" + gh release upload ${{ needs.release-create.outputs.release }} "./lvtrun-macos" + + - name: Upload To Artifact lvtc + if: github.ref != 'refs/heads/main' + uses: actions/upload-artifact@v3 + with: + name: lvtc-macos + path: ./lvtc-macos - - name: Upload To Artifact + - name: Upload To Artifact lvtrun if: github.ref != 'refs/heads/main' uses: actions/upload-artifact@v3 with: - name: koaky-macos - path: ./koaky-macos + name: lvtrun-macos + path: ./lvtrun-macos diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index dd66015..93b97d4 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -58,7 +58,7 @@ jobs: - name: Tests id: failedTest run: | - if ! stack test &> tests.log; then + if ! make tests &> tests.log; then echo "failedTest=true" >> $GITHUB_OUTPUT else echo "failedTest=false" >> $GITHUB_OUTPUT diff --git a/.gitignore b/.gitignore index ac73cc9..f61f7ff 100644 --- a/.gitignore +++ b/.gitignore @@ -169,6 +169,9 @@ tags /koaky-exe /glados +lvtc-exe +lvtrun-exe + *.log *.exe diff --git a/Makefile b/Makefile index 294c12a..ee3e8f1 100644 --- a/Makefile +++ b/Makefile @@ -5,41 +5,35 @@ ## makefile that stack ## -TARGET = koaky -MARVIN_TARGET = glados +TARGET = leviator -CP = cp -RM = rm -rf - -ifeq ($(OS),Windows_NT) - BIN_STACK = $(TARGET)-exe.exe -else - BIN_STACK = $(TARGET)-exe -endif - -all: $(TARGET) +LVT_COMPILER = lvtc +LVT_RUNER = lvtrun $(TARGET): - stack build --copy-bins --local-bin-path . - $(CP) "$(BIN_STACK)" "$(MARVIN_TARGET)" + "$(MAKE)" -C "$(LVT_COMPILER)" + "$(MAKE)" -C "$(LVT_RUNER)" clean: - stack clean + "$(MAKE)" -C "$(LVT_COMPILER)" clean + "$(MAKE)" -C "$(LVT_RUNER)" clean fclean: clean - stack purge - $(RM) "$(BIN_STACK)" - $(RM) "$(MARVIN_TARGET)" + "$(MAKE)" -C "$(LVT_COMPILER)" fclean + "$(MAKE)" -C "$(LVT_RUNER)" fclean re: fclean $(TARGET) tests: - stack test + "$(MAKE)" -C "$(LVT_COMPILER)" tests + "$(MAKE)" -C "$(LVT_RUNER)" tests tests-coverage: - stack test --coverage + "$(MAKE)" -C "$(LVT_COMPILER)" tests-coverage + "$(MAKE)" -C "$(LVT_RUNER)" tests-coverage tests-coverage-html-path: - @stack path --local-hpc-root + @"$(MAKE)" -C "$(LVT_COMPILER)" tests-coverage-html-path + @"$(MAKE)" -C "$(LVT_RUNER)" tests-coverage-html-path .PHONY: $(TARGET) fclean re clean all diff --git a/docs/Coverage.md b/docs/Coverage.md deleted file mode 100644 index 3bccffe..0000000 --- a/docs/Coverage.md +++ /dev/null @@ -1 +0,0 @@ -# this will be overwiten by the tests ... diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index d4fe094..8168fc0 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -4,5 +4,3 @@ This is a new amazing programming language made in Haskell. [README](README.md) -[:link: Tests](Tests.md) -[:link: Coverage](Coverage.md) diff --git a/docs/Tests.md b/docs/Tests.md deleted file mode 100644 index 3bccffe..0000000 --- a/docs/Tests.md +++ /dev/null @@ -1 +0,0 @@ -# this will be overwiten by the tests ... diff --git a/lvtc/stack.yaml.lock b/lvtc/stack.yaml.lock new file mode 100644 index 0000000..a39a124 --- /dev/null +++ b/lvtc/stack.yaml.lock @@ -0,0 +1,13 @@ +# This file was autogenerated by Stack. +# You should not edit this file by hand. +# For more information, please see the documentation at: +# https://docs.haskellstack.org/en/stable/lock_files + +packages: [] +snapshots: +- completed: + sha256: e176944bc843f740e05242fa7a66ca1f440c127e425254f7f1257f9b19add23f + size: 712153 + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/0.yaml + original: + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/0.yaml diff --git a/lvtrun/stack.yaml.lock b/lvtrun/stack.yaml.lock new file mode 100644 index 0000000..a39a124 --- /dev/null +++ b/lvtrun/stack.yaml.lock @@ -0,0 +1,13 @@ +# This file was autogenerated by Stack. +# You should not edit this file by hand. +# For more information, please see the documentation at: +# https://docs.haskellstack.org/en/stable/lock_files + +packages: [] +snapshots: +- completed: + sha256: e176944bc843f740e05242fa7a66ca1f440c127e425254f7f1257f9b19add23f + size: 712153 + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/0.yaml + original: + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/0.yaml