Skip to content

Commit edc2cc6

Browse files
Add XML CI workflow (#15923)
Co-authored-by: Julien Portalier <[email protected]>
1 parent 34875ff commit edc2cc6

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed

.github/workflows/xml.yml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
name: XML CI
2+
3+
on:
4+
push:
5+
paths:
6+
- 'src/xml/**'
7+
- '.github/workflows/xml.yml'
8+
pull_request:
9+
paths:
10+
- 'src/xml/**'
11+
- '.github/workflows/xml.yml'
12+
schedule:
13+
- cron: '0 3 * * *'
14+
workflow_dispatch:
15+
16+
permissions: {}
17+
18+
concurrency:
19+
group: ${{ github.workflow }}-${{ github.ref }}
20+
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
21+
22+
jobs:
23+
libssl_test:
24+
runs-on: ubuntu-latest
25+
name: "${{ matrix.pkg }}"
26+
container: crystallang/crystal:1.16.3-alpine
27+
strategy:
28+
fail-fast: false
29+
matrix:
30+
include:
31+
- pkg: "libxml2-dev=~2.9"
32+
repository: http://dl-cdn.alpinelinux.org/alpine/v3.16/main
33+
- pkg: "libxml2-dev=~2.12"
34+
repository: http://dl-cdn.alpinelinux.org/alpine/v3.20/main
35+
- pkg: "libxml2-dev=~2.13"
36+
repository: http://dl-cdn.alpinelinux.org/alpine/v3.22/main
37+
- pkg: "libxml2-dev"
38+
repository: http://dl-cdn.alpinelinux.org/alpine/edge/main
39+
steps:
40+
- name: Download Crystal source
41+
uses: actions/checkout@v4
42+
- name: Uninstall libxml2 and conflicts
43+
run: apk del libxml2-dev
44+
- name: Install ${{ matrix.pkg }}
45+
run: apk add "${{ matrix.pkg }}" --repository=${{ matrix.repository }}
46+
- name: Print LibXML2 version
47+
run: bin/crystal eval 'require "xml"; p! XML.libxml2_version'
48+
- name: Run XML specs
49+
run: bin/crystal spec --order=random spec/std/xml/

0 commit comments

Comments
 (0)