Skip to content

Commit

Permalink
Update CI and adapt to 'dylan-tool'
Browse files Browse the repository at this point in the history
Adapt to 'dylan-tool':

- Remove old package information deft-package.json
- Remove registry/ folder
- Ignore development directories in .gitignore
- Change sphinx-extensions path to use dylan-tool's default

Documentation CI:

- Add a 'build-docs' action.
- Add version for epub documentation in 'conf.py'
- Use 'furo' theme in 'conf.py'
- Comment 'html_static_path' option in 'conf.py' to avoid warning
  building the docs.
- Ignore certification validation to avoid timeouts in 'linkcheck'

Build and test CI:

- Add dependabot
- Ignore build on changes in documentation
- Prepare build matrix for other OS.
- Update actions/checkout to v4
- Use dylan-tool to update and build
  • Loading branch information
fraya committed Feb 21, 2024
1 parent dbc1c65 commit a25b9a5
Show file tree
Hide file tree
Showing 8 changed files with 103 additions and 23 deletions.
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file

version: 2
updates:
- package-ecosystem: "github-actions" # See documentation for possible values
directory: "/" # Location of package manifests
schedule:
interval: "weekly"
27 changes: 21 additions & 6 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,28 +3,43 @@ name: build-and-test
on:
push:
# all branches
paths-ignore:
- 'documentation/**'
pull_request:
branches:
- main
- master
paths-ignore:
- 'documentation/**'

# This enables the Run Workflow button on the Actions tab.
workflow_dispatch:

jobs:
build-and-test:
runs-on: ubuntu-latest
runs-on: ${{ matrix.os }}

strategy:
matrix:
os: [ ubuntu-latest ]

steps:

- uses: actions/checkout@v2
- uses: actions/checkout@v4

- uses: dylan-lang/install-opendylan@v2
- name: Install dylan-tool
uses: dylan-lang/install-dylan-tool@v2

- name: Update packages
run: dylan update

- name: Build logging-test-suite
run: ./dylan-compiler -build -jobs 3 logging-test-suite
run: dylan build logging-test-suite

- name: Build testworks-run
run: ./dylan-compiler -build -jobs 3 testworks-run
run: dylan build testworks-run

- name: Run logging-test-suite
run: _build/bin/testworks-run --load liblogging-test-suite.so
run: |
_build/bin/testworks-run --load liblogging-test-suite.so
59 changes: 59 additions & 0 deletions .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Build logging documentation

on:
push:
# all branches
paths:
- 'documentation/**'
pull_request:
# all branches
paths:
- 'documentation/**'

# This enables the Run Workflow button on the Actions tab.
workflow_dispatch:

# https://github.com/JamesIves/github-pages-deploy-action#readme
permissions:
contents: write

jobs:

build-and-deploy:
runs-on: ${{ matrix.os }}

strategy:
matrix:
os: [ ubuntu-latest ]

steps:

- uses: actions/checkout@v4

- name: Check links
uses: addnab/docker-run-action@v3
with:
image: ghcr.io/fraya/dylan-docs
options: -v ${{ github.workspace }}/documentation:/docs
run: make linkcheck

- name: Build docs with Furo theme
uses: addnab/docker-run-action@v3
with:
image: ghcr.io/fraya/dylan-docs
options: -v ${{ github.workspace }}/documentation:/docs
run: make html

- name: Upload html artifact
uses: actions/upload-artifact@v4
with:
name: logging-doc-html
path: documentation/build/html/

- name: Bypassing Jekyll on GH Pages
run: sudo touch documentation/build/html/.nojekyll

- name: Deploy documents to GH pages
uses: JamesIves/github-pages-deploy-action@v4
with:
folder: documentation/build/html
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,7 @@
*~
*.hdp
_build
_packages/
_test/
registry/
documentation/build/
11 changes: 0 additions & 11 deletions deft-package.json

This file was deleted.

11 changes: 7 additions & 4 deletions documentation/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import os
import sys

sys.path.insert(0, os.path.abspath('../sphinx-extensions/sphinxcontrib'))
sys.path.insert(0, os.path.abspath('../../_packages/sphinx-extensions/current/src/sphinxcontrib'))

import dylan.domain
import dylan.themes as dylan_themes
Expand All @@ -26,7 +26,7 @@

# The full version, including alpha/beta/rc tags
release = 'v2.1.1'

version = release

# -- General configuration ---------------------------------------------------

Expand Down Expand Up @@ -57,9 +57,12 @@
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'alabaster'
html_theme = 'furo'

# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
#html_static_path = ['_static']

# Ignore certification verification
tls_verify = False
1 change: 0 additions & 1 deletion registry/generic/logging

This file was deleted.

1 change: 0 additions & 1 deletion registry/generic/logging-test-suite

This file was deleted.

0 comments on commit a25b9a5

Please sign in to comment.