Skip to content
Merged
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
name: CI

on: [push, pull_request]

concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: Run Unit Tests
Expand Down
90 changes: 90 additions & 0 deletions .github/workflows/integration-test-agentics.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
name: Integration Test Agentics

on:
push:
branches: [main]
pull_request:
workflow_dispatch:

permissions:
contents: read

jobs:
integration-test-agentics:
name: Test Agentics Repository Integration
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: go.mod
cache: true

- name: Verify dependencies
run: go mod verify

- name: Install development dependencies
run: make deps-dev

- name: Build gh-aw binary
run: make build

- name: Verify GitHub CLI is available
run: |
gh --version
echo "GitHub CLI is available"

- name: Install gh-aw CLI extension locally
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
echo "Installing gh-aw extension locally..."
make install

- name: Verify gh-aw extension installation
run: |
gh aw --help
gh aw version

- name: Install workflows from agentics repository
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
echo "Installing workflows from githubnext/agentics..."
gh aw install githubnext/agentics
echo "Successfully installed agentics workflows"

- name: List installed workflows
run: |
echo "Listing installed workflows..."
gh aw list

- name: Recompile all workflows
run: |
echo "Recompiling all installed workflows..."
make recompile
echo "Successfully recompiled all workflows"

- name: Check for compilation artifacts
run: |
echo "Checking for generated .lock.yml files..."
find .github/workflows -name "*.lock.yml" | head -10 || echo "No lock files found yet"

- name: Verify no compilation errors
run: |
echo "Verifying workflow compilation completed without errors..."
if [ -n "$(find .github/workflows -name "*.md" -newer .github/workflows/*.lock.yml 2>/dev/null)" ]; then
echo "Warning: Some markdown files may be newer than their compiled versions"
fi

- name: Display integration test summary
if: always()
run: |
echo "=== Integration Test Summary ==="
echo "Repository: githubnext/agentics"
echo "Workflows installed and compiled successfully"
echo "All validations passed"
ls -la .github/workflows/*.lock.yml 2>/dev/null || echo "Note: Check workflow compilation status above"
6 changes: 4 additions & 2 deletions .github/workflows/test-claude.lock.yml

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

2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ deps:
.PHONY: deps-dev
deps-dev: deps copy-copilot-to-claude
go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
npm install --package-lock-only
npm ci

# Run linter
.PHONY: golint
Expand Down
2 changes: 1 addition & 1 deletion pkg/workflow/js/create_issue.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ async function main() {
const parentIssueNumber = context.payload?.issue?.number;
// Parse labels from environment variable (comma-separated string)
const labelsEnv = process.env.GITHUB_AW_ISSUE_LABELS;
const labels = labelsEnv ? labelsEnv.split(',').map(label => label.trim()).filter(label => label) : [];
const labels = labelsEnv ? labelsEnv.split(',').map(/** @param {string} label */ label => label.trim()).filter(/** @param {string} label */ label => label) : [];

// Parse the output to extract title and body
const lines = outputContent.split('\n');
Expand Down
4 changes: 3 additions & 1 deletion pkg/workflow/js/create_pull_request.cjs
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/** @type {typeof import("fs")} */
const fs = require("fs");
/** @type {typeof import("crypto")} */
const crypto = require("crypto");
const { execSync } = require("child_process");

Expand Down Expand Up @@ -82,7 +84,7 @@ async function main() {

// Parse labels from environment variable (comma-separated string)
const labelsEnv = process.env.GITHUB_AW_PR_LABELS;
const labels = labelsEnv ? labelsEnv.split(',').map(label => label.trim()).filter(label => label) : [];
const labels = labelsEnv ? labelsEnv.split(',').map(/** @param {string} label */ label => label.trim()).filter(/** @param {string} label */ label => label) : [];

// Parse draft setting from environment variable (defaults to true)
const draftEnv = process.env.GITHUB_AW_PR_DRAFT;
Expand Down
Loading