Alien-OpenJDK

 view release on metacpan or  search on metacpan

alienfile  view on Meta::CPAN

sub _decode {
  if( $_[0]->{content} ) {
    return decode_json($_[0]->{content});
  } elsif( $_[0]->{path} ) {
    return decode_json( path($_[0]->{path})->slurp_raw );
  }
}

sub do_dist_temurin {
  # API documentation: <https://github.com/adoptium/api.adoptium.net>
  my $endpoint_server = 'https://api.adoptium.net';
  start_url $endpoint_server . '/v3/info/available_releases';

  # Perl to API
  my %os_mapping = (
      linux   => 'linux',
      MSWin32 => 'windows',
      darwin  => 'mac',
      solaris => 'solaris',
      aix     => 'aix',

      # need to determine libc for this one

alienfile  view on Meta::CPAN

    my $data = $orig->($build, @_);

    if( $data->{filename} eq 'available_releases' ) {
      my $available_releases = _decode( $data );
      $build->log( "Available releases: @{ $available_releases->{available_releases} }" );

      my $release = $available_releases->{most_recent_lts};
      $build->log( "Using release $release" );

      my $assets = _decode( $orig->($build,
        $endpoint_server
        .  "/v3/assets/latest/${release}/hotspot"
        . "?image_type=jdk"
        . "&os=${os}"
        . "&architecture=${arch}"
        . "&vendor=eclipse"
      ) );

      return {
        type => 'list',
        list => [



( run in 0.321 second using v1.01-cache-2.11-cpan-27979f6cc8f )