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
44 changes: 44 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Version control
.git

# IDE and editor files
.idea
.vscode
.DS_Store

# Build caches
.eslintcache
*.tsbuildinfo

# Build outputs
build/
dist/
output/
out/
tmp/
client/out/
server/out/
shared/out/
syntaxes/out/

# Dependencies
node_modules/

# Dockerfile is passed explicitly via --file; excluding it here just keeps
# it out of the build context (avoids cache busting on Dockerfile edits).
Dockerfile*
*.log
*.tgz
*.vsix

# Git hooks
.husky

# GitHub workflows
.github/

# SDD specs
.sdd/

# Test coverage
coverage/
97 changes: 0 additions & 97 deletions .github/workflows/check.yml

This file was deleted.

47 changes: 47 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: CI

description: Lints, tests, builds, and packages the .vsix on pull requests and pushes to master.

on:
pull_request:
push:
branches:
- master

# Cancel in-progress CI runs for the same ref when a new push occurs,
# preventing redundant builds and saving CI resources.
concurrency:
group: ci-ext-vscode-adblock-syntax-${{ github.ref }}
cancel-in-progress: true

jobs:
test:
name: Lint, test, build
runs-on: team-extensions
steps:
- name: Checkout
uses: actions/checkout@v5

# Stamp a dev version BEFORE the Docker builds so package.json is
# consistent across test-output and build-output layers. package.json
# has no committed version — CI injects one derived from CHANGELOG.
- name: Set dev version
uses: AdGuardSoftwareLimited/ext-shared-actions/.github/actions/set-dev-version@master

- name: Build and test via Docker
run: DOCKER_BUILDKIT=1 docker build --progress plain --target test-output .

- name: Build release artifacts
run: |
DOCKER_BUILDKIT=1 docker build --progress plain \
--target build-output \
--output ./artifacts \
.

- name: Upload vsix package
uses: actions/upload-artifact@v4
with:
name: vscode-adblock-vsix
path: |
artifacts/vscode-adblock.vsix
artifacts/adblock.plist
24 changes: 24 additions & 0 deletions .github/workflows/mirror.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Mirror

description: Mirrors code to the public repo on every push to master.

on:
push:
branches:
- master

# `contents: read` — checkout source repo
# `actions: write` — disable workflows in the public mirror
# `id-token: write` — Octopass token for push to public repo
permissions:
contents: read
actions: write
id-token: write

jobs:
mirror:
uses: AdGuardSoftwareLimited/actions/.github/workflows/mirror.yml@master
with:
team: extensions
target_repo: git@github.com:AdguardTeam/VscodeAdblockSyntax.git
secrets: inherit
29 changes: 29 additions & 0 deletions .github/workflows/prepare-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Prepare release

description: >-
Opens a release PR that finalizes CHANGELOG.md for the given tag.
After merge, publish-release.yml takes over. Odd minor (e.g. v2.1.x) =
Marketplace pre-release; even minor (e.g. v2.2.x) = stable.

on:
workflow_dispatch:
inputs:
tag:
description: >-
Release tag WITH "v" prefix. Odd minor = pre-release channel
(e.g. v2.1.5); even minor = stable (e.g. v2.2.0).
required: true
type: string

# `contents: write` — push the release-bump branch
# `id-token: write` — Octopass OIDC for PR creation
permissions:
contents: write
id-token: write

jobs:
create-release-pr:
uses: AdGuardSoftwareLimited/actions/.github/workflows/create-release-pr.yml@master
with:
tag: ${{ inputs.tag }}
team: extensions
Loading
Loading