Skip to content

Add support for multiple servers. #85

@drewctaylor

Description

@drewctaylor

Currently, as I understand it, the user may specify only one server, as follows:

- name: Setup Java.
  uses: actions/setup-java@v1
  with:
    java-version: 1.8
    server-id: value-of-server-id
    server-username: SERVER_USERNAME
    server-password: SERVER_PASSWORD

Which produces the following xml in the settings.xml file:

<server>
  <id>value-of-server-id</id>
  <username>value-of-server-username</username>
  <password>value-of-server-password</password>
</server>

However, it would be useful to be able to specify more than one server. For example, this yaml:

- name: Setup Java.
  uses: actions/setup-java@v1
  with:
    java-version: 1.8
    server-list:
      - server-id: value-of-server-id-1
        server-username: SERVER_USERNAME_1
        server-password: SERVER_PASSWORD_1
      - server-id: value-of-server-id-2
        server-username: SERVER_USERNAME_2
        server-password: SERVER_PASSWORD_2

Might produce the following xml in the settings.xml file:

<server>
  <id>value-of-server-id-1</id>
  <username>value-of-server-username-1</username>
  <password>value-of-server-password-1</password>
</server>
<server>
  <id>value-of-server-id-2</id>
  <username>value-of-server-username-2</username>
  <password>value-of-server-password-2</password>
</server>

While it would be valuable in general to be able to specify more than one server, it should be especially valuable in the context of Github, as it seems for now, in order to reference multiple packages from maven.pkg.github.com, the user must reference each package's repository in their pom.xml.

If the above configuration were possible, a user could then reference the artifacts at value-of-server-id-1 and value-of-server-id-2 in their pom.xml as follows:

<dependencies>
  <dependency>
    <groupId>group-id-for-owner</groupId>
    <artifactId>artifact-id-from-repository-1</artifactId>
    <version>version-1</version>
  </dependency>

  <dependency>
    <groupId>group-id-for-owner</groupId>
    <artifactId>artifact-id-from-repository-2</artifactId>
    <version>version-2</version>
  </dependency>
</dependencies>

<repositories>
  <repository>
    <id>value-of-server-id-1</id>
    <name>GitHub Packages</name>
    <url>https://maven.pkg.github.com/owner/artifact-id-from-repository-1</url>
  </repository>
  <repository>
    <id>value-of-server-id-2</id>
    <name>GitHub Packages</name>
    <url>https://maven.pkg.github.com/owner/artifact-id-from-repository-2</url>
  </repository>
</repositories>

Activity

added 3 commits that reference this issue on Aug 1, 2020
2b68012
28e454b
2a3b137
MCLonips

MCLonips commented on Apr 6, 2021

@MCLonips

what is the current state of this issue?

perkam

perkam commented on May 10, 2021

@perkam

Same question here. Is this feature on the roadmap? It would be really useful.

dmitry-shibanov

dmitry-shibanov commented on May 11, 2021

@dmitry-shibanov
Contributor

Hello everyone. Unfortunately it's not possible to implement right now, because GitHub does not support multiple parameters for arguments. actions/toolkit#184

torrespro

torrespro commented on Nov 11, 2021

@torrespro
jsoref

jsoref commented on Mar 6, 2023

@jsoref

Surely this could be supported with either a toJSON / fromJSON or by taking a file parameter which contains the relevant content.

Andreiasilva1

Andreiasilva1 commented on Jun 13, 2023

@Andreiasilva1

Gostaria de saber como funciona

kevinheins

kevinheins commented on Jul 18, 2024

@kevinheins

This would be really helpful to have. @IvanZosimov you closed the duplicate #427, can you provide an update or ping who can push this forward?

roman-bicherschii

roman-bicherschii commented on Sep 17, 2024

@roman-bicherschii

I run into the same issue :-( ! Would be really neat to either

  1. be able to configure multiple servers,
  2. or to access all packages of a given organization via single organization's server: eg: https://maven.pkg.github.com// over https://maven.pkg.github.com//
fbonander

fbonander commented on Nov 28, 2024

@fbonander

@roman-bicherschii You can use wildcards to access multiple repos

https://maven.pkg.github.com/MyOrg/*

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Add support for multiple servers. · Issue #85 · actions/setup-java