mirror of
https://github.com/ethauvin/bld-antlr4.git
synced 2025-04-25 00:37:12 -07:00
GitHub setup
This commit is contained in:
parent
c88b734e1e
commit
7394a21115
4 changed files with 117 additions and 1 deletions
26
.github/workflows/bld.yml
vendored
Normal file
26
.github/workflows/bld.yml
vendored
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
name: badge-ci
|
||||||
|
|
||||||
|
on: [push, pull_request, workflow_dispatch]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-project:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
java-version: [ 17, 19, 20 ]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout source repository
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Set up JDK ${{ matrix.java-version }}
|
||||||
|
uses: actions/setup-java@v3
|
||||||
|
with:
|
||||||
|
distribution: 'zulu'
|
||||||
|
java-version: ${{ matrix.java-version }}
|
||||||
|
|
||||||
|
- name: Run tests
|
||||||
|
run: ./bld download compile test
|
60
.github/workflows/pages.yml
vendored
Normal file
60
.github/workflows/pages.yml
vendored
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
name: javadocs-pages
|
||||||
|
|
||||||
|
on:
|
||||||
|
# Runs on pushes targeting the default branch
|
||||||
|
push:
|
||||||
|
branches: ["main"]
|
||||||
|
|
||||||
|
# Allows you to run this workflow manually from the Actions tab
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
pages: write
|
||||||
|
id-token: write
|
||||||
|
|
||||||
|
# Allow one concurrent deployment
|
||||||
|
concurrency:
|
||||||
|
group: "pages"
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
# Single deploy job since we're just deploying
|
||||||
|
deploy:
|
||||||
|
environment:
|
||||||
|
name: github-pages
|
||||||
|
url: ${{ steps.deployment.outputs.page_url }}
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout source repository
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Set up JDK 19
|
||||||
|
uses: actions/setup-java@v3
|
||||||
|
with:
|
||||||
|
distribution: 'zulu'
|
||||||
|
java-version: 19
|
||||||
|
|
||||||
|
- name: Grant execute permission for gradlew
|
||||||
|
run: chmod +x gradlew
|
||||||
|
|
||||||
|
- name: Build Javadocs
|
||||||
|
run: ./bld download clean javadoc
|
||||||
|
|
||||||
|
- name: Setup Pages
|
||||||
|
uses: actions/configure-pages@v3
|
||||||
|
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-pages-artifact@v1
|
||||||
|
with:
|
||||||
|
# Upload generated Javadocs repository
|
||||||
|
path: 'build/javadoc/'
|
||||||
|
|
||||||
|
- name: Deploy to GitHub Pages
|
||||||
|
id: deployment
|
||||||
|
uses: actions/deploy-pages@v1
|
30
README.md
Normal file
30
README.md
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
# [Bld](https://github.com/rife2/rife2/wiki/What-Is-Bld) extension to generate ANTLR4 parsers
|
||||||
|
|
||||||
|
[](https://opensource.org/licenses/Apache-2.0)
|
||||||
|
[](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||||
|
[](https://github.com/rife2/bld-antlr4/releases/latest)
|
||||||
|
[](https://github.com/rife2/bld-antrl4/actions/workflows/bld.yml)
|
||||||
|
|
||||||
|
An extension for generating Java sources from ANTLR4 parsers.
|
||||||
|
|
||||||
|
```java
|
||||||
|
private final Antlr4Operation antlr4Operation_ = new Antlr4Operation();
|
||||||
|
@BuildCommand
|
||||||
|
public void generateGrammar()
|
||||||
|
throws Exception {
|
||||||
|
antlr4Operation_.executeOnce(o -> o
|
||||||
|
.sourceDirectories(List.of(new File(srcMainDirectory(), "antlr")))
|
||||||
|
.outputDirectory(new File(buildDirectory(), "generated"))
|
||||||
|
.visitor()
|
||||||
|
.longMessages());
|
||||||
|
}
|
||||||
|
|
||||||
|
// compileOperation_ is part of the main project
|
||||||
|
public void compile()
|
||||||
|
throws Exception {
|
||||||
|
generateGrammar();
|
||||||
|
compileOperation_.executeOnce(o -> o
|
||||||
|
.fromProject(this)
|
||||||
|
.mainSourceDirectories(List.of(antlr4Operation_.outputDirectory())));
|
||||||
|
}
|
||||||
|
```
|
|
@ -18,7 +18,7 @@ public class Antlr4Build extends Project {
|
||||||
public Antlr4Build() {
|
public Antlr4Build() {
|
||||||
pkg = "rife.bld.extension";
|
pkg = "rife.bld.extension";
|
||||||
name = "Antlr4";
|
name = "Antlr4";
|
||||||
version = version(0,9,3);
|
version = version(0,9,4);
|
||||||
javadocOptions.docLint(NO_MISSING);
|
javadocOptions.docLint(NO_MISSING);
|
||||||
publishRepository = repository("rife2");
|
publishRepository = repository("rife2");
|
||||||
publishInfo = new PublishInfo()
|
publishInfo = new PublishInfo()
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue