Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
fa66ff1
Add sample workflow
f-f Sep 11, 2020
6c32aa5
Install purescript, add cache
f-f Sep 11, 2020
2cadea2
Fix cache on macos
f-f Sep 20, 2020
353d4e6
Fix build conditional
f-f Sep 20, 2020
ee85c38
I guess we can start versioning the caches
f-f Sep 20, 2020
83a5403
Debugging CI is fun
f-f Sep 20, 2020
6f0d10a
Upgrade to GHC 8.8.4
f-f Oct 9, 2020
a1321a6
Fix Win32 version
f-f Oct 9, 2020
f42e536
Add more packages
f-f Oct 9, 2020
33aef40
Fix linux build?
f-f Oct 9, 2020
92783cd
Update to latest package set
f-f Oct 9, 2020
18cde2f
Remove broken code and fix tests
f-f Oct 9, 2020
2d3438a
Fix more tests
f-f Oct 9, 2020
cfce22f
Use fork of with-utf8
f-f Oct 10, 2020
5d3c0ce
Update lts
f-f Oct 28, 2020
034f5ec
Downgrade lts to make windows compile?
f-f Oct 30, 2020
eeb62f1
Fix windows build
f-f Oct 31, 2020
0774f87
Fix build
f-f Oct 31, 2020
2a854af
Fix windows build?
f-f Oct 31, 2020
5c4a338
I wonder if we are reading files the wrong way
f-f Nov 1, 2020
a883a40
Fix handling of bower.json
f-f Nov 1, 2020
814ce98
Merge branch 'master' into github-actions
f-f Nov 1, 2020
3fba363
CI debugging
f-f Nov 1, 2020
6698b9d
Revert "CI debugging"
f-f Nov 1, 2020
252c976
Add release workflow
f-f Nov 2, 2020
56c2222
Up to GHC 8.8 once again
f-f Nov 2, 2020
c8eb66b
Fix time constraint
f-f Nov 2, 2020
707385a
Add windows again to GH Actions
f-f Nov 2, 2020
92a4d42
Allow newer
f-f Nov 2, 2020
89bb6f6
Add windows to release CI
f-f Nov 2, 2020
8531273
Fix windows artifact build
f-f Nov 4, 2020
0e26a04
Fix appveyor
f-f Nov 4, 2020
c954401
Wrong slash?
f-f Nov 4, 2020
269c7b1
Add reelease script, go back to old package sets in tests
f-f Nov 10, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 68 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: build

on:
push:
branches: [ master ]
pull_request:
branches: [ master ]

jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest, macOS-latest, windows-latest ]
steps:
# We set LF endings so that the Windows environment is consistent with Appveyor
# See here for context: https://github.com/actions/checkout/issues/135
- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- uses: actions/checkout@v2
- name: Setup Haskell
uses: actions/[email protected]
with:
ghc-version: '8.6.5'
stack-version: 'latest'
enable-stack: true
stack-no-global: true
stack-setup-ghc: true
- name: Setup node and npm
uses: "actions/setup-node@v1"
with:
node-version: '10'
# NB: We install gnu-tar because BSD tar is buggy on Github's macos machines,
# and it breaks the cache: https://github.com/actions/cache/issues/403
- name: Install GNU tar (macOS)
if: runner.os == 'macOS'
run: |
brew install gnu-tar
echo "/usr/local/opt/gnu-tar/libexec/gnubin" >> $GITHUB_PATH
- name: create ~/.local/bin
run: mkdir -p "$HOME/.local/bin"
- name: Add ~/.local/bin to PATH
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
- uses: actions/cache@v2
with:
path: |
~/.stack
key: ${{ runner.os }}-${{ hashFiles('stack.yaml') }}-1
- run: npm install -g [email protected] [email protected] [email protected]

- name: Install dependencies
run: |
stack install --dependencies-only
shell: bash

- name: Build
run: stack build
shell: bash

- name: Install
run: stack install
shell: bash

- name: Run tests
run: stack test
shell: bash
117 changes: 117 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
name: release

on:
push:
tags:
- '*'

jobs:
draft_release:
name: Create draft release
runs-on: ubuntu-latest
outputs:
upload_url: ${{ steps.create_release.outputs.upload_url }}

steps:
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: ${{ github.ref }}
body: ""
draft: true
prerelease: false

build_release:
name: Build/upload release
needs: draft_release
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest, macOS-latest, windows-latest ]
steps:
- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
- uses: actions/checkout@v2
- name: Setup Haskell
uses: actions/[email protected]
with:
ghc-version: '8.6.5'
stack-version: 'latest'
enable-stack: true
stack-no-global: true
stack-setup-ghc: true
- name: Setup node
uses: actions/setup-node@v1
with:
node-version: 10
# NB: We install gnu-tar because BSD tar is buggy on Github's macos machines,
# and it breaks the cache: https://github.com/actions/cache/issues/403
- name: Install GNU tar (macOS)
if: runner.os == 'macOS'
run: |
brew install gnu-tar
echo "/usr/local/opt/gnu-tar/libexec/gnubin" >> $GITHUB_PATH

- name: Package binary (Linux and macOS)
if: runner.os != 'Windows'
shell: bash
run: |
stack install --dependencies-only
mkdir artifacts
stack build --copy-bins --local-bin-path ./artifacts
cp artifacts/spago spago
strip spago
tar -zcvf "${{ matrix.os }}.tar.gz" spago

- name: Package binary (Windows)
if: runner.os == 'Windows'
shell: bash
run: |
stack install --dependencies-only
stack build --copy-bins --local-bin-path ./artifacts
cp artifacts/spago.exe spago.exe
tar -zcvf windows.tar.gz spago.exe

- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.draft_release.outputs.upload_url }}
asset_path: ./${{ matrix.os }}.tar.gz
asset_name: ${{ matrix.os }}.tar.gz
asset_content_type: application/gzip

npm_publish:
name: Publish package on npm
needs: build_release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: 10
- name: Prepare publish
shell: bash
run: |
sed -e "s/NPM_VERSION/$(./scripts/get-version)/g" -i npm/package.json
sed -e "s/PACKAGE_VERSION/$(./scripts/get-version)/g" -i npm/install.js
cd npm
cp ../README.md ./README.md
cp ../CONTRIBUTING.md ./CONTRIBUTING.md
cp ../LICENSE ./LICENSE
- name: Publish to NPM
uses: pascalgn/[email protected]
with:
workspace: "npm"
publish_args: "--non-interactive"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
data
test/spago-test
.stack-work/
*.cabal
*~
**/__pycache__
templates/docs-search-app.js
templates/purescript-docs-search
.envrc
curator.log
.DS_Store
stack.yaml.lock
16 changes: 0 additions & 16 deletions .mergify.yml

This file was deleted.

166 changes: 0 additions & 166 deletions .travis.yml

This file was deleted.

Loading