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
19 changes: 2 additions & 17 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
This repository contains the core Eclipse Platform components that form the basis for the Eclipse IDE. It is a **large-scale Java/OSGi project** (~120MB, 5,600+ Java files across 38 Maven modules) using **Maven/Tycho** for building Eclipse RCP bundles and features.

**Key Technologies:**
- Language: Java (JDK 17+, targets JDK 21 in CI)
- Build: Maven 3.9+ with Eclipse Tycho (OSGi/RCP build tooling)
- Language: Java (JDK 21)
- Build: Maven 3.9.11 with Eclipse Tycho (OSGi/RCP build tooling)
- Architecture: OSGi bundles organized as Eclipse plugins
- Testing: JUnit with Tycho Surefire plugin

Expand All @@ -22,25 +22,10 @@ This repository contains the core Eclipse Platform components that form the basi

## Critical Build Information

**⚠️ IMPORTANT: This repository CANNOT be built in isolation.** It depends on a parent POM (`eclipse-platform-parent`) from the [eclipse.platform.releng.aggregator](https://github.com/eclipse-platform/eclipse.platform.releng.aggregator) repository.

### Individual Bundle Builds

Individual bundles CAN be built using the pre-configured profile if you have network access to Eclipse repositories:

```bash
cd <bundle-directory> # e.g., runtime/bundles/org.eclipse.core.runtime
mvn clean verify -Pbuild-individual-bundles
```

The `-Pbuild-individual-bundles` profile (configured in `.mvn/maven.config`) enables the bundle to fetch the parent POM from https://repo.eclipse.org/content/repositories/eclipse/.

**Note:** If network access to Eclipse repositories is blocked, individual bundle builds will fail. In such environments, code exploration and analysis can still be performed, but build verification is not possible.

### Full Platform Build

For full platform builds, use the aggregator repository which includes this repo as a Git submodule. The CI workflows in this repository delegate to workflows in the aggregator repository.

### Build Profiles Used in CI

The Jenkinsfile shows the complete build command:
Expand Down
32 changes: 32 additions & 0 deletions .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: "Copilot Setup Steps"

# Automatically run the setup steps when they are changed to allow for easy validation, and
# allow manual testing through the repository's "Actions" tab
on:
workflow_dispatch:
pull_request:
paths:
- .github/workflows/copilot-setup-steps.yml

jobs:
# The job MUST be called `copilot-setup-steps` or it will not be picked up by Copilot.
copilot-setup-steps:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
cache: 'maven'

- name: Set up Maven 3.9.11
uses: stCarolas/setup-maven@v5
with:
maven-version: '3.9.11'

Loading