Repository navigation
56 lines (52 loc) · 1.62 KB
/
Copy pathci.yml
File metadata and controls
56 lines (52 loc) · 1.62 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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# Project: hyperi-developer
# File: .github/workflows/ci.yml
# Purpose: CI pipeline
#
# License: Apache-2.0
# Copyright: (c) 2026 HYPERI PTY LIMITED
#
# Calls hyperi-ci's shared pipeline rather than hand-rolling one. There is no
# reusable workflow for an Ansible repo, so this uses the TypeScript one:
# package.json makes hyperi-ci resolve the project as JavaScript, and
# .hyperi-ci.yaml scopes those stages back to what this tree actually is. The
# test stage runs tools/ci/run-tests.sh, which exercises the Ansible.
#
# Publishing is gated on a `Publish: true` commit trailer, written by
# `hyperi-ci push --publish`. Every other push validates only.
name: CI
on:
push:
branches: ["**"]
pull_request:
branches: [main]
workflow_dispatch:
inputs:
tag:
type: string
required: false
default: ""
description: "Tag to re-publish (existing tag). Omit + set from-head to release HEAD."
from-head:
type: string
required: false
default: ""
description: "'true' to release/retry the current HEAD -- the CI creates the tag."
bump:
type: string
required: false
default: "auto"
description: "Version resolution for from-head: auto | patch | minor (forced) | X.Y.Z (exact version)."
permissions:
contents: write
issues: write
packages: write
pull-requests: write
jobs:
ci:
uses: hyperi-io/hyperi-ci/.github/workflows/ts-ci.yml@main
with:
publish-target: oss
tag: ${{ inputs.tag || '' }}
from-head: ${{ inputs.from-head || '' }}
bump: ${{ inputs.bump || 'auto' }}
secrets: inherit