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

Remove Oracle JDK support #56

Closed
3 tasks done
sormuras opened this issue Jun 25, 2019 · 8 comments
Closed
3 tasks done

Remove Oracle JDK support #56

sormuras opened this issue Jun 25, 2019 · 8 comments
Assignees

Comments

@sormuras
Copy link
Owner

sormuras commented Jun 25, 2019

Follow-up from #33 and https://travis-ci.community/t/cannot-install-oracle-jdk-11/3892/4?u=sormuras

Deliverables

  • Remove BCL from license option
  • Remove 9-BCL, 10-BCL, and 11-BCL URLs from script
  • Forward to OpenJDK variant ?
@sormuras
Copy link
Owner Author

/cc @travis-ci @BanzaiMan

nickrobison-usds added a commit to CMSgov/dpc-app that referenced this issue Jun 26, 2019
Attempt to address issues with Travis install scripts, as reported here: sormuras/bach#56.

We should be using openjdk anyways.
nickrobison-usds added a commit to CMSgov/dpc-app that referenced this issue Jun 26, 2019
Attempt to address issues with Travis install scripts, as reported here: sormuras/bach#56.

We should be using openjdk anyways.
nickrobison-usds added a commit to CMSgov/dpc-app that referenced this issue Jun 28, 2019
* DPC-13: Added command for registering organizations

Added simple command to input an organization resource and send it to the Attribution Service.

The corresponding API endpoint does not exist, but the integration and parsing works.

* DPC-13: Initial commit of Organization endpoint for registration

Added OrganizationEntity for storing FHIR resource in database.

Created a new FHIRConvertable interface for adding to/from FHIR methods to a given resource.

* DPC-13:  Entity serialization is working correctly.

We can now create an OrganizationEntity from the underlying FHIR resource.

The extractors are pretty clunky, but the basic logic is working.

* DPC-13: Organization registration command is working

A couple of small tweaks to get organization registration working.

* DPC-13: Expanded org resource test

Added a negative test to the organization resource endpoint.

Modified travis file to clean install as the first step, to avoid any caching issues.

Registration Command now outputs to the stderr when there's a problem.

* DPC-13: Normalized Organization FHIR resource

Organization resource is now persisted across a number of tables, still a bunch of empty values, but we're getting closer.

Added a simple converter system for translating between FHIR and Hibernate entity types.

* DPC-13: Entity references are working

Yup, it works now.

* DPC-13: Organization Registration is now working

We can register an organization, with its contacts and endpoints in a single call.

This should only be available when connected to CMSNet, as we don't publicly map the ports for the attribution service. Still, in the future, we might consider moving this to the admin layer.

* DPC-13: Fix failing compilation and integration tests

Cleaned up some of the attribution tests and addressed some ErrorProne warnings.

* DPC-13: More error prone fixes

Cleaned up a couple of ErrorProne warnings, also modified the config to skip Jooq generated sources, which we don't have any control over.

* DPC-13: Address CodeClimate errors.

A couple of small tweaks to make CodeClimate happy.

* DPC-13: Refactored organization test resources

We now have one organization tmpl, which we can use for both testing and creating new orgs.

* DPC-13: Fix pom typo

Bad typo in pom broke the build, fixed.

* DPC-13: Fix resource typo

Pointed to the wrong directories. Embarrassing, but fixed.

* DPC-17: Added initial Macaroons support

Created dpc-macaroons module to add some helper methods around the core jamcaroons library.

We can now create, serialize and deserialize Macaroons without having to directly call the macaroons library. So that's kind of nice.

We only support first-party caveats at this point, and no root key rotation.

* DPC-17: Organization Resource can now generate Macaroons

Added simple Macaroon generation by wiring in the dmc-macaroons library.

No persisting or linking to Organizations yet, but we can add organization caveats.

* DPC-17: Token IDs are now persisted in the in the Organization table

We can now persist a list of token IDs in the Organization table.

Added token_ids column to Organization table.

Also updated the StringListConverter to handle nulls correctly.

* DPC-17: We can verify macaroons with hard-coded values

Basic verification is working, but not much else.

* DPC-13: We can now do some basic caveat verification

Reorganized the MacaroonBakery to use a builder pattern, which gives us more flexibility in setting up default values.

We now longer need to inject a server location.

We can setup default caveat verifiers that always run, as well as passing in a list of verifiers on each invocation.

* DPC-17: Implemented a more generic Verifier interface

This should let us do more complex things within the actual verification function.

Still not sure how to return the validation messages. Exceptions, maybe?

* DPC-17: Organization Tokens are verifying correctly

Cleaned up the actual injection into the Attribution Service.

Modified the MacaroonCaveat parser to support any characters after the operator.

* DPC-17: Testing improvements and cleanups

Added some unit tests to verify that the caveats parse correctly.

* DPC-17: Added refresh check, to avoid overwriting existing tokens.

We now have some protection against invalidating an organization's tokens.

Unfortunately, we can't really test it, as we need truly randomly generated tokens. So now it's Hibernate time.

* DPC-17: Added Hibernate entity for persisting root keys

Root keys can now be stored in a Hibernate table.

We still need to add the manual table construction, including the expire trigger

* DPC-17: Root keys are persisting

We can now persist root keys with Hibernate and the migrations work.

The dpc-macaroons module doesn't do any migrations, it just assumes that everything works correctly.

* DPC-17: Added some default caveats

We now generate Version and Expiration caveats, using hard coded values.

* DPC-17: We can now generate tokens with specific versions and expiration times

Added default suppliers/verifiers for generating and verifying specific token properties.

* DPC-17: A number of cleanups, test and error prone fixes

* DPC-17: Root Key Store tests do cleanup

Added a lifecycle hook to ensure that the Bakery tests clean up after themselves.

* DPC-17: Securely generate UTF-8 compatible root key

We can't just convert the output of Random() to a UTF-8 string, so this is the next best thing.
We'll probably want to improve this in the future.

* DPC-17: Refactored endpoints and removed token refresh

Tried to clean up the endpoints a bit to better follow style guide.

Removed support for refreshing tokens, we'll address that in a later PR.

* Switch to openjdk11

Attempt to address issues with Travis install scripts, as reported here: sormuras/bach#56.

We should be using openjdk anyways.
markshw added a commit to bitclave/base-node that referenced this issue Jun 28, 2019
vonnieda added a commit to openpnp/openpnp that referenced this issue Jun 29, 2019
vonnieda added a commit to openpnp/openpnp that referenced this issue Jun 29, 2019
* feature/travis-ci:
  Remove 12, as opencv is not compatible yet. Add a few more openjdk options.
  Oracle JDK 11 seems to be removed, and all Oracle JDKs > 9 are going away soon, so trying some new options: sormuras/bach#56
@tellison
Copy link

You can obtain your OpenJDK builds (nightlies or releases) via the AdoptOpenJDK API. No login page etc to go through.

If there is anything missing from there drop a note on the #api channel of AdoptOpenJDK Slack and the team can discuss options.

@sormuras
Copy link
Owner Author

Thanks for the heads-up, Tim.

I'm already using and showing examples how install-jdk.sh supports AdoptOpenJDK builds via its API here:

https://github.com/sormuras/sormuras.github.io/blob/686e757e20aff3a32f69b324326213cf3b123758/.travis.yml#L28-L33

source install-jdk.sh --url 'https://api.adoptopenjdk.net/v2/binary/releases/openjdk11?openjdk_impl=hotspot&os=linux&arch=x64&release=latest&heap_size=normal&type=jdk'

I wished, https://jdk.java.net/ had a similar API (/cc @robilad) or at least a look-up table -- so I didn't have to parse their HTML document for the download links...

Having said that, I don't plan to change install-jdk.sh's API to directly support AdoptOpenJDK, yet. But it would be an easy task for @travis-ci (/cc @BanzaiMan) to update their scripts accordingly, i.e. map user's configuration settings to a command line as shown above.

vonnieda added a commit to openpnp/openpnp that referenced this issue Jun 30, 2019
* develop:
  Remove 12, as opencv is not compatible yet. Add a few more openjdk options.
  Oracle JDK 11 seems to be removed, and all Oracle JDKs > 9 are going away soon, so trying some new options: sormuras/bach#56
@tellison
Copy link

tellison commented Jul 1, 2019

Hi @sormuras, apologies if I am misreading the script, but it looks like the 11-GPL download is still referencing the insecure 11.0.2 build?

@sormuras
Copy link
Owner Author

sormuras commented Jul 1, 2019

True.

Here's the gist of our chat:

image

sormuras added a commit that referenced this issue Jul 1, 2019
@sormuras
Copy link
Owner Author

sormuras commented Jul 1, 2019

  • Remove license option
  • Remove 9-BCL, 10-BCL, and 11-BCL URLs and special handling from script

Done via 6f245b5

sormuras added a commit that referenced this issue Jul 1, 2019
Custom URL installation don't have to be under GPLv2+CE.

Addresses #56
sormuras added a commit that referenced this issue Jul 1, 2019
@sormuras
Copy link
Owner Author

sormuras commented Jul 1, 2019

  • Forward to OpenJDK variant

Done via a7bb407

@sormuras
Copy link
Owner Author

sormuras commented Jul 8, 2019

Oracle JDKs are no longer "directly" supported.

@sormuras sormuras closed this as completed Jul 8, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants