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

Updated pom to skip build on Windows running on ARM #14063

Merged
merged 1 commit into from
May 10, 2024

Conversation

cziesman
Copy link
Contributor

@cziesman cziesman commented May 6, 2024

Description

The camel-salesforce component cannot build on Windows running on ARM because there is no gRPC library available. In order to build successfully on Windows/ARM, this PR disables the build on that environment.

In general, adding profiles is discouraged, but since there is no way to disable a module via properties, adding profiles to the camel-salesforce parent pom was the only way to make this work.

Target

  • [ x] I checked that the commit is targeting the correct branch (note that Camel 3 uses camel-3.x, whereas Camel 4 uses the main branch)

Tracking

  • [ x] If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

  • [ x] I checked that each commit in the pull request has a meaningful subject line and body.

  • [ x] I have run mvn clean install -DskipTests locally and I have committed all auto-generated changes

mvn clean install -DskipTests fails on Windows/ARM due to an error when building the documentation. That error probably requires a separate JIRA issue.

Copy link
Contributor

github-actions bot commented May 6, 2024

🌟 Thank you for your contribution to the Apache Camel project! 🌟

🤖 CI automation will test this PR automatically.

🐫 Apache Camel Committers, please review the following items:

  • First-time contributors require MANUAL approval for the GitHub Actions to run

  • You can use the command /component-test (camel-)component-name1 (camel-)component-name2.. to request a test from the test bot.

  • You can label PRs using build-all, build-dependents, skip-tests and test-dependents to fine-tune the checks executed by this PR.

  • Build and test logs are available in the Summary page. Only Apache Camel committers have access to the summary.

  • ⚠️ Be careful when sharing logs. Review their contents before sharing them publicly.

@gnodet
Copy link
Contributor

gnodet commented May 7, 2024

@cziesman why the fact that there's no native library breaks the build ?
It should at most break when running tests, but the native library isn't really used at build time, is it ?

@cziesman
Copy link
Contributor Author

cziesman commented May 7, 2024

@gnodet This does currently fail at build time, as was noted in Jira (https://issues.apache.org/jira/browse/CAMEL-20706):

Protobuf compilation fails on Windows 11 on ARM because there is no protoc executable available for ARM.

Failed to execute goal org.xolstice.maven.plugins:protobuf-maven-plugin:0.6.1:compile (default) on project camel-salesforce: Unable to resolve artifact: Missing:
[ERROR] ----------
[ERROR] 1) com.google.protobuf:protoc:exe:windows-aarch_64:3.25.3

<snipped/>

[ERROR] 1 required artifact is missing.

Copy link
Contributor

@orpiske orpiske left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we might need this one. We already do similar things to other components whenever they have unfulfilled requirements on a few platforms (i.e: dlj on ppc64 and s390x, etc).

@davsclaus davsclaus merged commit 5f4209a into apache:main May 10, 2024
3 of 5 checks passed
davsclaus added a commit that referenced this pull request May 10, 2024
@davsclaus
Copy link
Contributor

@cziesman this PR did not work - it causes a normal build on osx and other systems to somehow skip salesforce also and affects the total build with missing files in catalog from salesforce etc. Reverted

@cziesman
Copy link
Contributor Author

@davsclaus That's very odd. I ran the build on my x86 MacBook and the Salesforce artifacts were generated. I wouldn't have submitted the PR otherwise. I am on PTO through Tuesday but I will revisit this when I return.

4nt01ne pushed a commit to 4nt01ne/camel that referenced this pull request May 14, 2024
4nt01ne pushed a commit to 4nt01ne/camel that referenced this pull request May 14, 2024
@cziesman
Copy link
Contributor Author

@davsclaus How are other components that are not built in specific environments excluded from the tooling? I ran this again on OSX on Intel and ARM, and the build passed. I ran it on Fedora 38 on ARM and it failed trying to build camel-endpointdsl.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants