Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Validate gef-classic changes with downstream project #107

Closed
vogella opened this issue Aug 22, 2022 · 14 comments
Closed

Validate gef-classic changes with downstream project #107

vogella opened this issue Aug 22, 2022 · 14 comments
Labels

Comments

@vogella
Copy link
Contributor

vogella commented Aug 22, 2022

If possible it would be great if we could also build GMF and Sirius as part of of our PR verification.

Does anyone knows how this can be done with Github actions or on the command line? @azoitl IIRC you had plans to do something like this.

@Phillipus maybe you have an idea?

@Phillipus
Copy link
Contributor

@Phillipus maybe you have an idea?

Sorry, I don't know how to do this.

@azoitl
Copy link
Contributor

azoitl commented Aug 22, 2022

@vogella yes I had plans to do some setup. For starting I mostly had a manual setup in mind. Mostly because I expect that the automated builds of these GMF etc. most probably pull in GEF classic via some configured p2 update site.

Currently I run a first test with 4diac IDE. There I did it very simple I just imported the GEF Classic projects into my 4diac IDE development workspace. This is enough that 4idac IDE is using my GEF Classic development version. I know this does not scale, but it gives me some confidence.

@pcdavid
Copy link
Contributor

pcdavid commented Aug 23, 2022

FWIW, https://ci.eclipse.org/gmf-runtime/job/gmf-runtime-all/ builds (weekly, but this could be changed) against all target platforms supported by GMF, including canary, which is defined here and depends on the nightlies of "everything", including GEF-Classic: <repository id="GEF-Classic" location="https://download.eclipse.org/tools/gef/classic/latest/"/>.

On the command-line, from GMF Runtime's root folder: mvn -Dplatform=canary clean verify

Sirius has an equivalent but in a separate job (https://ci.eclipse.org/sirius/job/sirius-canary) which builds daily. Its canary target platform also consumes nightlies of everyone.

@pcdavid
Copy link
Contributor

pcdavid commented Aug 23, 2022

Also, note that Sirius has not (yet) moved to GitHub.

@azoitl
Copy link
Contributor

azoitl commented Aug 23, 2022

@vogella is it possible to access the p2 repo our PR verification build is generating, or can we publish it somewhere? With that we could create a gefpr.target at GMF which would point to that p2 site and trigger a dedicated GMF build in the eclipse Jenkins. Withthat @pcdavid wouldn't have any work and we could get early feedback.

If that works it would be rather straing forward to roll it out to other downstream projects (e.g., Sirus, 4diac IDE).

@vogella
Copy link
Contributor Author

vogella commented Aug 23, 2022

Thanks @pcdavid for the info.

@azoitl I think we could upload the PR build results somewhere and afterwards configure GMF to use this new location. For this the GMF build would have to introduce a parameter which we could use in such build.

The first step would be to do this manually on the command line, once we have this working we could try to automate this via Jenkins for GH action.

@azoitl
Copy link
Contributor

azoitl commented Aug 23, 2022

@azoitl I think we could upload the PR build results somewhere and afterwards configure GMF to use this new location. For this the GMF build would have to introduce a parameter which we could use in such build.

@vogella how I understood @pcdavid message and from what I see in their repo they allready have such a paramter for their maven builds.

@github-actions
Copy link

This issue is stale because it has been open for 90 days with no activity.

@github-actions github-actions bot added the stale label Nov 22, 2022
@pcdavid
Copy link
Contributor

pcdavid commented Nov 22, 2022

@vogella how I understood @pcdavid message and from what I see in their repo they allready have such a paramter for their maven builds.

There is no such parameter, as the .target files in GMF point to fixed locations. Yes, the canary.target point to a "floating" location (latest), but it's not the same as "build GMF against the result of building the specific GEF PR #XX".

Assuming your build actions publish the result of a GEF PR at a specific location, one could do some string substituion on a GMF .target file to point to that...

@azoitl
Copy link
Contributor

azoitl commented Nov 22, 2022

@vogella how I understood @pcdavid message and from what I see in their repo they allready have such a paramter for their maven builds.

There is no such parameter, as the .target files in GMF point to fixed locations. Yes, the canary.target point to a "floating" location (latest), but it's not the same as "build GMF against the result of building the specific GEF PR #XX".

Assuming your build actions publish the result of a GEF PR at a specific location, one could do some string substituion on a GMF .target file to point to that...

As I first step I would love to just beeing able to build GMF runtime on my machine. But somehow not even that works when I use the command provided above. Should this be so?

@github-actions github-actions bot removed the stale label Nov 23, 2022
@pcdavid
Copy link
Contributor

pcdavid commented Nov 23, 2022

The default target platform still points to 2021-03 which I had removed.
All the CI jobs explicitly set the target to use (and usually when I test locally I test on a specific target too) so I had not noticed.
You should be able to build GMF using mvn clean verify -Dplatform=2021-03 (or any of the target platform from releng/org.eclipse.gmf.runtime.target). Normally they are all OK, see https://ci.eclipse.org/gmf-runtime/job/gmf-runtime-all.

@pcdavid
Copy link
Contributor

pcdavid commented Nov 23, 2022

I've pushed eclipse-gmf-runtime/gmf-runtime@10490fe which makes 2021-03 the new default.

@github-actions
Copy link

This issue is stale because it has been open for 90 days with no activity.

@github-actions github-actions bot added the stale label Feb 22, 2023
@azoitl
Copy link
Contributor

azoitl commented Jun 10, 2023

I'm now testing regularly against GMF Runtime, partly graphiti, 4diac IDE and WPT. I think with that we have more feedback and are saver. Therefore I'm closing this issue for now.

@azoitl azoitl closed this as completed Jun 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants