Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
18 changes: 9 additions & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ on:
required: false
type: string
default: ""
skip_release:
description: Skip the release job
skip_publish:
description: Skip the publish job
required: false
type: boolean
default: false
Expand Down Expand Up @@ -58,7 +58,7 @@ jobs:
outputs:
deployments: ${{ steps.discovery.outputs.deployments }}
earthfiles: ${{ steps.discovery.outputs.earthfiles }}
releases: ${{ steps.discovery.outputs.releases }}
publishers: ${{ steps.discovery.outputs.publishers }}
steps:
- uses: actions/checkout@v4
- name: Install Forge
Expand Down Expand Up @@ -140,19 +140,19 @@ jobs:
skip_output: true
verbosity: ${{ inputs.verbosity }}

release:
uses: input-output-hk/catalyst-forge/.github/workflows/release.yml@master
publish:
uses: input-output-hk/catalyst-forge/.github/workflows/publish.yml@master
needs: [discover, check, build, test]
if: (fromJson(needs.discover.outputs.releases)[0] != null) && !inputs.skip_release && !failure() && !cancelled()
if: (fromJson(needs.discover.outputs.publishers)[0] != null) && !inputs.skip_publish && !failure() && !cancelled()
with:
releases: ${{ needs.discover.outputs.releases }}
publishers: ${{ needs.discover.outputs.publishers }}
forge_version: ${{ inputs.forge_version }}
local: ${{ inputs.local }}
verbosity: ${{ inputs.verbosity }}

deploy:
uses: input-output-hk/catalyst-forge/.github/workflows/deploy.yml@master
needs: [discover, check, build, test, release]
needs: [discover, check, build, test, publish]
if: (fromJson(needs.discover.outputs.deployments)[0] != null) && !inputs.skip_deploy && !failure() && !cancelled()
with:
deployments: ${{ needs.discover.outputs.deployments }}
Expand All @@ -161,7 +161,7 @@ jobs:
verbosity: ${{ inputs.verbosity }}

final:
needs: [check, build, package, test, release, deploy]
needs: [check, build, package, test, publish, deploy]
if: ${{ always() && (contains(needs.*.result, 'failure') || !failure() && !cancelled()) }}
runs-on: ubuntu-latest
steps:
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/release.yml → .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
on:
workflow_call:
inputs:
releases:
publishers:
description: |
A JSON list of releases to run
A JSON list of publishers to run
required: true
type: string
force:
description: |
Force the release to run even if no events are triggered
Force the publisher to run even if no events are triggered
required: false
type: string
default: "false"
Expand All @@ -32,12 +32,12 @@ env:

jobs:
run:
name: ${{ matrix.release.project }} (${{ matrix.release.name}})
name: ${{ matrix.publisher.project }} (${{ matrix.publisher.name}})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
release: ${{ fromJson(inputs.releases) }}
publisher: ${{ fromJson(inputs.publishers) }}
steps:
- uses: actions/checkout@v4
- name: Install Forge
Expand All @@ -56,11 +56,11 @@ jobs:
with:
skip_earthly_install: ${{ inputs.forge_version == 'local' && steps.install-local.outputs.cache-hit == false }}
skip_earthly_satellite: ${{ inputs.forge_version == 'local' && steps.install-local.outputs.cache-hit == false }}
- name: Release
- name: Publish
uses: input-output-hk/catalyst-forge/actions/run@master
with:
command: release
args: ${{ matrix.release.project }} ${{ matrix.release.name }}
command: publish
args: ${{ matrix.publisher.project }} ${{ matrix.publisher.name }}
local: ${{ inputs.local }}
verbosity: ${{ inputs.verbosity }}
env:
Expand Down
10 changes: 7 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,13 @@ node_modules
!/.vscode/settings.recommended.json
!/.vscode/tasks.recommended.json

.gomodcache
.gocache

.auth
.env
.ai/
.claude/
.cursor/
.ai
.certs
.claude
.cursor
CLAUDE.md
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ go build -o forge ./cmd

### Reference
- **[CLI Reference](cli/)** - Command-line interface documentation
- **[API Reference](foundry/api/)** - REST API documentation
- **[API Reference](services/api/)** - REST API documentation
- **[Blueprint Reference](docs/reference/blueprint.md)** - Configuration schema reference
- **[Deployment Reference](docs/reference/deployments.md)** - Deployment configuration guide

Expand Down
4 changes: 2 additions & 2 deletions actions/discovery/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ outputs:
description: The deployments discovered
earthfiles:
description: The earthfiles discovered
releases:
description: The releases discovered
publishers:
description: The publishers discovered

runs:
using: node20
Expand Down
16 changes: 8 additions & 8 deletions actions/discovery/dist/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion actions/discovery/dist/index.js.map

Large diffs are not rendered by default.

16 changes: 8 additions & 8 deletions actions/discovery/src/main.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ async function run() {

await runDeploymentScan(absolute, path);
await runEarthfileScan(filters, absolute, path, tags);
await runReleaseScan(absolute, path);
await runPublisherScan(absolute, path);
} catch (error) {
core.setFailed(error.message);
}
Expand Down Expand Up @@ -66,12 +66,12 @@ async function runEarthfileScan(filters, absolute, path, tags) {
}

/**
* Runs the release scan
* Runs the publisher scan
* @param {boolean} absolute Whether to use absolute paths or not
* @param {string} path The path to scan
*/
async function runReleaseScan(absolute, path) {
const args = ["-vv", "scan", "blueprint", "--filter", "project.release"];
async function runPublisherScan(absolute, path) {
const args = ["-vv", "scan", "blueprint", "--filter", "project.publisher"];

if (absolute === true) {
args.push("--absolute");
Expand All @@ -82,12 +82,12 @@ async function runReleaseScan(absolute, path) {
const result = await exec.getExecOutput("forge", args);
const json = JSON.parse(result.stdout);

const releaseMap = Object.entries(json).flatMap(([project, value]) =>
Object.keys(value["project.release"]).map((name) => ({ project, name })),
const publisherMap = Object.entries(json).flatMap(([project, value]) =>
Object.keys(value["project.publisher"]).map((name) => ({ project, name })),
);

core.info(`Found releases: ${JSON.stringify(releaseMap)}`);
core.setOutput("releases", JSON.stringify(releaseMap));
core.info(`Found publishers: ${JSON.stringify(publisherMap)}`);
core.setOutput("publishers", JSON.stringify(publisherMap));
}

/**
Expand Down
2 changes: 1 addition & 1 deletion cli/Earthfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ deps:
ENV GOMODCACHE=/go/modcache
CACHE --persist --sharing shared /go

COPY ../foundry/api+src/src /foundry/api
COPY ../services/api+src/src /services/api
COPY ../lib/deployment+src/src /lib/deployment
COPY ../lib/external/helm+src/src /lib/external/helm
COPY ../lib/external/kcl+src/src /lib/external/kcl
Expand Down
Loading
Loading