-
Notifications
You must be signed in to change notification settings - Fork 15
37 lines (33 loc) · 1.36 KB
/
Copy pathlinux.yml
File metadata and controls
37 lines (33 loc) · 1.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
name: Linux
on:
push:
branches: [main]
pull_request:
merge_group:
workflow_dispatch:
permissions:
contents: read
jobs:
build:
name: Linux build
runs-on: ubuntu-latest
container: swift:6.2
steps:
- uses: actions/checkout@v4
# Formatting, before anything slower. Five releases in a row reached main with
# `swift-format --strict` failing — #320, #350, #351, #352 and one in
# ProjectPersistence — every one a line the formatter wraps on its own, and every
# one found at release time because nothing on the PR path checked it. A green
# `swift build` and a green test run say nothing about formatting.
#
# `swift format` ships with the toolchain in this container, so this needs no new
# dependency. It is the format half of `make check`; the swiftlint half stays out
# because swiftlint is not in this image, and none of the five failures were lint.
- name: swift-format --strict
run: swift format lint --recursive --strict --configuration .swift-format
GraphcodeKit graphcode graphcode-cli graphcoded
- run: swift build
- run: .build/debug/graphcode
# The built CLI against a throwaway daemon — exit 0 on the verbs that dial it.
# A runtime fault in the CLI passes every scheme build; this is what catches it.
- run: scripts/cli-smoke.sh