Skip to content

Commit 68d739e

Browse files
authored
support merge queue (#23)
Fixes #22
1 parent 7aecc87 commit 68d739e

File tree

4 files changed

+61
-22
lines changed

4 files changed

+61
-22
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# .github/workflows/lint-migrations.yml
2+
name: Lint Migrations
3+
4+
on:
5+
# Run on pull_request and push to verify action works in both cases.
6+
#
7+
# When we run on push, we won't have a pull request to leave a comment on.
8+
pull_request:
9+
push:
10+
11+
jobs:
12+
lint_migrations:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v1
16+
- uses: ./
17+
with:
18+
pattern: "*.sql"

CHANGELOG.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## 2.0.1 - 2025-04-09
11+
12+
### Fixed
13+
14+
- Fixed support for non-`pull_request` trigger events, like `push` or `merge_queue` (#23).
15+
1016
## 2.0.0 - 2024-09-21
1117

1218
### Added
1319

1420
- Added more configuration options (#10, #15). Thanks @Agraphie!
1521

16-
1722
## 1.0.2 - 2023-12-05
1823

1924
### Fixed

action.yml

Lines changed: 24 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -12,37 +12,37 @@ inputs:
1212
required: true
1313
type: string
1414
assume-in-transaction:
15-
description: 'Assume in transaction'
15+
description: "Assume in transaction"
1616
required: false
17-
default: 'false'
17+
default: "false"
1818
type: boolean
1919
exclude:
20-
description: 'Rules to exclude, as a comma-separated string'
20+
description: "Rules to exclude, as a comma-separated string"
2121
required: false
2222
type: string
2323
files:
2424
description: "Space separated list of file paths to check. Cannot contain glob patterns."
2525
required: false
26-
default: ''
26+
default: ""
2727
type: string
2828
fail-on-violations:
29-
description: 'Fail on violations'
29+
description: "Fail on violations"
3030
required: false
31-
default: 'false'
31+
default: "false"
3232
type: boolean
3333
pattern:
3434
description: "Glob pattern of files to match. (./migrations/*)"
3535
required: false
36-
default: ''
36+
default: ""
3737
type: string
3838
pg-version:
39-
description: 'PostgreSQL version'
39+
description: "PostgreSQL version"
4040
required: false
4141
type: string
4242
verbose:
43-
description: 'Verbose output'
43+
description: "Verbose output"
4444
required: false
45-
default: 'true'
45+
default: "true"
4646
type: boolean
4747
version:
4848
description: "Squawk NPM version to install (default: latest)"
@@ -66,43 +66,46 @@ runs:
6666
PATTERN="${{ inputs.pattern }}"
6767
PG_VERSION="${{ inputs.pg-version }}"
6868
VERBOSE="${{ inputs.verbose }}"
69-
69+
7070
COMMAND="squawk"
71-
71+
7272
if "$ASSUME_IN_TRANSACTION"; then
7373
COMMAND="$COMMAND --assume-in-transaction"
7474
fi
75-
75+
7676
if [ -n "$EXCLUDE" ]; then
7777
COMMAND="$COMMAND --exclude=$EXCLUDE"
7878
fi
7979
8080
if [ -n "$PG_VERSION" ]; then
8181
COMMAND="$COMMAND --pg-version=$PG_VERSION"
8282
fi
83-
83+
8484
if "$VERBOSE"; then
8585
COMMAND="$COMMAND --verbose"
8686
fi
87-
88-
COMMAND="$COMMAND upload-to-github"
89-
if "$FAIL_ON_VIOLATIONS"; then
90-
COMMAND="$COMMAND --fail-on-violations"
87+
88+
# We can only leave a comment when we run on pull_request.
89+
if [[ "${{ github.event_name }}" == "pull_request" ]]; then
90+
COMMAND="$COMMAND upload-to-github"
91+
if "$FAIL_ON_VIOLATIONS"; then
92+
COMMAND="$COMMAND --fail-on-violations"
93+
fi
9194
fi
9295
9396
if [ -n "$FILES" ]; then
9497
COMMAND="$COMMAND $FILES"
9598
fi
96-
99+
97100
if [ -n "$PATTERN" ]; then
98101
expandedFiles=$(find . \( -path "./$PATTERN" -or -path "$PATTERN" \) -type f | xargs echo)
99102
COMMAND="$COMMAND $expandedFiles"
100103
fi
101-
104+
102105
export SQUAWK_GITHUB_TOKEN=${{inputs.access_token}}
103106
export SQUAWK_GITHUB_REPO_OWNER=$(jq --raw-output .repository.owner.login "$GITHUB_EVENT_PATH")
104107
export SQUAWK_GITHUB_REPO_NAME=$(jq --raw-output .repository.name "$GITHUB_EVENT_PATH")
105108
export SQUAWK_GITHUB_PR_NUMBER=$(jq --raw-output .pull_request.number "$GITHUB_EVENT_PATH")
106-
109+
107110
echo "Running: $COMMAND"
108111
sh -c "$COMMAND"

example.sql

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
BEGIN;
2+
--
3+
-- Create model Bar
4+
--
5+
CREATE TABLE "core_bar"(
6+
"id" serial NOT NULL PRIMARY KEY,
7+
"alpha" varchar(100) NOT NULL
8+
);
9+
CREATE INDEX "field_name_idx" ON "table_name"("field_name");
10+
ALTER TABLE table_name
11+
ADD CONSTRAINT field_name_constraint UNIQUE (field_name);
12+
COMMIT;
13+

0 commit comments

Comments
 (0)