Skip to content

Commit

Permalink
MassInstallAction: Install the CI workflow on this repository (#172)
Browse files Browse the repository at this point in the history
* Switch to GitHub Actions for CI

* Run Drone with Julia 1.5 and only on master branch

* Update TagBot setup

* Build documentation, test different providers and number of threads

Co-authored-by: Mosè Giordano <[email protected]>
  • Loading branch information
timholy and giordano authored Dec 26, 2020
1 parent 130e9a0 commit fc827d7
Show file tree
Hide file tree
Showing 8 changed files with 152 additions and 97 deletions.
26 changes: 26 additions & 0 deletions .drone.jsonnet
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
local Pipeline(os, arch, version) = {
kind: "pipeline",
name: os+" - "+arch+" - Julia "+version,
platform: {
os: os,
arch: arch
},
steps: [
{
name: "build",
image: "julia:"+version,
commands: [
"julia --project=. --check-bounds=yes --color=yes -e 'using InteractiveUtils; versioninfo(verbose=true); using Pkg; Pkg.build(); Pkg.test(coverage=true)'"
]
}
],
trigger: {
branch: ["master"]
}
};

[
Pipeline("linux", "arm", "1.3"),
Pipeline("linux", "arm64", "1.3"),
Pipeline("linux", "arm64", "1.5")
]
26 changes: 26 additions & 0 deletions .drone.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@ steps:
commands:
- "julia --project=. --check-bounds=yes --color=yes -e 'using InteractiveUtils; versioninfo(verbose=true); using Pkg; Pkg.build(); Pkg.test(coverage=true)'"

trigger:
branch:
- master

---
kind: pipeline
name: linux - arm64 - Julia 1.3
Expand All @@ -26,4 +30,26 @@ steps:
commands:
- "julia --project=. --check-bounds=yes --color=yes -e 'using InteractiveUtils; versioninfo(verbose=true); using Pkg; Pkg.build(); Pkg.test(coverage=true)'"

trigger:
branch:
- master

---
kind: pipeline
name: linux - arm64 - Julia 1.5

platform:
os: linux
arch: arm64

steps:
- name: build
image: julia:1.5
commands:
- "julia --project=. --check-bounds=yes --color=yes -e 'using InteractiveUtils; versioninfo(verbose=true); using Pkg; Pkg.build(); Pkg.test(coverage=true)'"

trigger:
branch:
- master

...
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.drone.jsonnet linguist-detectable=false
CITATION.bib linguist-detectable=false
91 changes: 91 additions & 0 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
name: CI

on:
pull_request:
push:
branches:
- master
tags: '*'

jobs:
test:
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - provider ${{ matrix.provider }} - ${{ matrix.threads }} thread(s)
runs-on: ${{ matrix.os }}
env:
JULIA_FFTW_PROVIDER: ${{ matrix.provider }}
JULIA_NUM_THREADS: ${{ matrix.threads }}
strategy:
fail-fast: false
matrix:
provider:
- 'FFTW'
- 'MKL'
version:
- '1.3'
- 'nightly'
os:
- ubuntu-latest
- macOS-latest
- windows-latest
threads:
- '1'
- '2'
arch:
- x64
- x86
exclude:
# 32-bit Julia binaries are not available on macOS
- os: macOS-latest
arch: x86
# 32-bit Linux binary for MKL isn't always available, let's ignore it
- os: ubuntu-latest
provider: 'MKL'
arch: x86
- provider: 'MKL'
threads: '2'

steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
- uses: actions/cache@v2
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
- uses: julia-actions/julia-processcoverage@v1
- uses: codecov/codecov-action@v1
with:
file: lcov.info

Documentation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@latest
with:
version: 1
- name: Cache artifacts
uses: actions/cache@v2
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/docs/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-docdeploy@releases/v1
env:
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}
8 changes: 6 additions & 2 deletions .github/workflows/TagBot.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
name: TagBot
on:
schedule:
- cron: 37 09 * * *
issue_comment:
types:
- created
workflow_dispatch:
jobs:
TagBot:
if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot'
runs-on: ubuntu-latest
steps:
- uses: JuliaRegistries/TagBot@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
ssh: ${{ secrets.DOCUMENTER_KEY }}
48 changes: 0 additions & 48 deletions .travis.yml

This file was deleted.

3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
# FFTW.jl

[![Travis](https://travis-ci.org/JuliaMath/FFTW.jl.svg?branch=master)](https://travis-ci.org/JuliaMath/FFTW.jl)
[![AppVeyor](https://ci.appveyor.com/api/projects/status/w2bow83kn8ej7g0g?svg=true)](https://ci.appveyor.com/project/StevenGJohnson/fftw-jl)
[![CI](https://github.com/JuliaMath/FFTW.jl/workflows/CI/badge.svg)](https://github.com/JuliaMath/FFTW.jl/actions?query=workflow%3ACI)
[![Coveralls](https://coveralls.io/repos/github/JuliaMath/FFTW.jl/badge.svg?branch=master)](https://coveralls.io/github/JuliaMath/FFTW.jl?branch=master)

[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://JuliaMath.github.io/FFTW.jl/stable)
Expand Down
45 changes: 0 additions & 45 deletions appveyor.yml

This file was deleted.

0 comments on commit fc827d7

Please sign in to comment.