javac-upload #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: javac-upload | |
on: | |
schedule: | |
- cron: '0 */8 * * *' | |
workflow_dispatch: | |
jobs: | |
build-javac-support: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
repository: 'eclipse-jdtls/eclipse-jdt-core-incubator' | |
ref: 'dom-with-javac' | |
path: eclipse-jdt-core-incubator | |
- uses: actions/checkout@v4 | |
with: | |
repository: 'eclipse-jdtls/eclipse.jdt.ls' | |
path: eclipse.jdt.ls | |
- uses: actions/checkout@v4 | |
with: | |
repository: 'redhat-developer/vscode-java' | |
path: vscode-java | |
- name: Set Up Java | |
uses: actions/setup-java@v4 | |
with: | |
java-version: '22' | |
distribution: 'adopt' | |
cache: 'maven' | |
- name: Set up Maven | |
uses: stCarolas/setup-maven@d6af6abeda15e98926a57b5aa970a96bb37f97d1 # v5 | |
with: | |
maven-version: 3.9.6 | |
- name: Build JDT Core / Javac | |
run: | | |
cd eclipse-jdt-core-incubator | |
mvn clean install -DskipTests | |
cd .. | |
- name: Apply JDT-LS changes | |
run: | | |
cd eclipse.jdt.ls | |
gh pr checkout https://github.com/eclipse-jdtls/eclipse.jdt.ls/pull/3123 | |
git rebase master | |
cd .. | |
env: | |
GH_TOKEN: ${{ github.token }} | |
- name: Apply VS Code Java changes | |
run: | | |
cd vscode-java | |
gh pr checkout https://github.com/redhat-developer/vscode-java/pull/3558 | |
git rebase master | |
env: | |
GH_TOKEN: ${{ github.token }} | |
- name: Set Up NodeJS | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '18' | |
- name: Install NodeJS dependencies | |
run: npm install -g typescript "@vscode/vsce" | |
- name: Build vscode-java | |
run: | | |
npm ci | |
- name: Build JDT-LS | |
run: | | |
rm -rf ./out | |
npm run build-server | |
echo "EXT_VERSION=$(cat package.json | jq -r .version)" >> $GITHUB_ENV | |
- name: Prepare Lombok Support | |
run: | | |
npx gulp download_lombok | |
- name: Package vscode-java | |
run: | | |
npx gulp prepare_pre_release | |
vsce package --pre-release -o vscode-javac-${{ env.EXT_VERSION }}-${GITHUB_RUN_NUMBER}.vsix | |
ls -lash *.vsix | |
- name: Publish to GH Release Tab | |
uses: "marvinpinto/action-automatic-releases@919008cf3f741b179569b7a6fb4d8860689ab7f0" | |
with: | |
repo_token: "${{secrets.GITHUB_TOKEN}}" | |
automatic_release_tag: "javac-prototype" | |
prerelease: true | |
title: "Prototype Build with Javac support" | |
files: | | |
vscode-java/*.vsix |