Example usage for org.apache.maven.settings.crypto DefaultSettingsDecryptionRequest DefaultSettingsDecryptionRequest

List of usage examples for org.apache.maven.settings.crypto DefaultSettingsDecryptionRequest DefaultSettingsDecryptionRequest

Introduction

In this page you can find the example usage for org.apache.maven.settings.crypto DefaultSettingsDecryptionRequest DefaultSettingsDecryptionRequest.

Prototype

public DefaultSettingsDecryptionRequest(Proxy proxy) 

Source Link

Document

Creates a new request to decrypt the specified proxy.

Usage

From source file:capsule.UserSettings.java

License:Open Source License

private UserSettings() {
    final DefaultSettingsBuildingRequest request = new DefaultSettingsBuildingRequest();
    request.setUserSettingsFile(DEFAULT_LOCAL_MAVEN.resolve(SETTINGS_XML).toFile());
    request.setGlobalSettingsFile(// w ww  . j  a  v  a 2  s. c  o m
            MAVEN_HOME != null ? MAVEN_HOME.resolve("conf").resolve(SETTINGS_XML).toFile() : null);
    request.setSystemProperties(getSystemProperties());

    try {
        this.settings = new DefaultSettingsBuilderFactory().newInstance().build(request).getEffectiveSettings();
        final SettingsDecryptionResult result = newDefaultSettingsDecrypter()
                .decrypt(new DefaultSettingsDecryptionRequest(settings));

        settings.setServers(result.getServers());
        settings.setProxies(result.getProxies());
    } catch (SettingsBuildingException e) {
        throw new RuntimeException(e);
    }
}

From source file:com.basistech.ReleaseNoteMojo.java

License:Open Source License

private boolean getAuthFromSettings(Client client) throws MojoExecutionException {
    if (serverId == null) {
        return false;
    }// w ww . j  av a 2  s .  co  m
    Server server = getServer(settings, serverId);
    if (server == null) {
        throw new MojoExecutionException(
                MessageFormat.format("Server ''{0}'' not found in settings", serverId));
    }

    getLog().debug(MessageFormat.format("Using ''{0}'' server credentials", serverId));

    try {
        SettingsDecrypter settingsDecrypter = container.lookup(SettingsDecrypter.class);
        SettingsDecryptionResult result = settingsDecrypter
                .decrypt(new DefaultSettingsDecryptionRequest(server));
        server = result.getServer();
    } catch (ComponentLookupException cle) {
        throw new MojoExecutionException("Unable to lookup SettingsDecrypter: " + cle.getMessage(), cle);
    }

    String serverUsername = server.getUsername();
    String serverPassword = server.getPassword();

    if (serverUsername != null && serverUsername.length() > 0 && serverPassword != null
            && serverPassword.length() > 0) {
        getLog().debug("Using basic authentication with username: " + serverUsername);
        setupBasicAuthentication(client, serverUsername, serverPassword);
        return true;
    }

    // A server password without a username is assumed to be an OAuth2 token
    if (serverPassword != null && serverPassword.length() > 0) {
        getLog().debug("Using OAuth2 access token authentication");
        setupOauth2(client, serverPassword);
        return true;
    }

    getLog().debug(MessageFormat.format("Server ''{0}'' is missing username/password credentials", serverId));
    return false;
}

From source file:com.basistech.ReleaseNoteMojo.java

License:Open Source License

private void setupProxy(Invocation.Builder target) throws MojoExecutionException {
    Proxy proxy = getProxy(settings, serverId);
    if (null != proxy) {
        ClientConfiguration cxfConfig = WebClient.getConfig(target);
        Conduit conduit = cxfConfig.getConduit();

        try {/*w w w .  j  ava2 s.c o m*/
            SettingsDecrypter settingsDecrypter = container.lookup(SettingsDecrypter.class);
            SettingsDecryptionResult result = settingsDecrypter
                    .decrypt(new DefaultSettingsDecryptionRequest(proxy));
            proxy = result.getProxy();
        } catch (ComponentLookupException cle) {
            throw new MojoExecutionException("Unable to lookup SettingsDecrypter: " + cle.getMessage(), cle);
        }
        getLog().debug(MessageFormat.format("Found Proxy {0}:{1}", proxy.getHost(), proxy.getPort()));
        HTTPConduit http = (HTTPConduit) conduit;
        http.getClient().setProxyServer(proxy.getHost());
        http.getClient().setProxyServerPort(proxy.getPort());
        http.getProxyAuthorization().setUserName(proxy.getUsername());
        http.getProxyAuthorization().setPassword(proxy.getPassword());
    }
}

From source file:com.cloudbees.sdk.maven.RepositorySystemModule.java

License:Apache License

/**
 * List of remote repositories to resolve artifacts from.
 *//*from w  w  w  .  j av  a  2s  . c  om*/
@Provides
@Singleton
public List<RemoteRepository> getRemoteRepositories(SettingsDecrypter decrypter,
        ExtensionList<RemoteRepositoryDecorator> decorators) {

    List<RemoteRepository> repositories = new ArrayList<RemoteRepository>();
    MavenDependencyResolverSettings resolverSettings = new MavenDependencyResolverSettings();
    resolverSettings.setUseMavenCentral(true);
    List<RemoteRepository> repos = resolverSettings.getRemoteRepositories();
    for (RemoteRepository remoteRepository : repos) {
        Server server = resolverSettings.getSettings().getServer(remoteRepository.getId());
        if (server != null) {
            server = decrypter.decrypt(new DefaultSettingsDecryptionRequest(server)).getServer();
            remoteRepository.setAuthentication(new Authentication(server.getUsername(), server.getPassword(),
                    server.getPrivateKey(), server.getPassphrase()));
        }
        repositories.add(decorate(remoteRepository, decorators));
    }
    RemoteRepository r = new RemoteRepository("cloudbees-public-release", "default",
            "https://repository-cloudbees.forge.cloudbees.com/public-release/");
    repositories.add(decorate(r, decorators));
    return repositories;
}

From source file:com.github.veithen.cosmos.p2.maven.plugin.importer.MavenSessionProxyDataProvider.java

License:Apache License

@Override
public IProxyData getProxyData(String protocol) {
    MavenExecutionRequest request = session.getRequest();
    if (request == null) {
        return null;
    }/*from  w  ww  .ja  v  a2s.  c o m*/
    List<Proxy> proxies = request.getProxies();
    if (proxies == null) {
        return null;
    }
    for (Proxy proxy : proxies) {
        if (proxy.isActive() && protocol.equalsIgnoreCase(proxy.getProtocol())) {
            return new MavenSessionProxyDataAdapter(protocol.toUpperCase(Locale.ENGLISH),
                    settingsDecrypter.decrypt(new DefaultSettingsDecryptionRequest(proxy)).getProxy());
        }
    }
    return null;
}

From source file:com.goodformobile.build.mobile.RIMSigningMojo.java

License:Apache License

public void execute() throws MojoExecutionException {

    getLog().info("RIMSigningMojo.execute()");

    if (skipSigning) {
        getLog().info("Skipping signing.");
        return;/* w  w  w .j  a v a2 s .com*/
    }

    Settings settings = this.settings;
    Server server = settings.getServer(signingCredentialsServerId);
    if (server == null) {
        throw new MojoExecutionException("Unable to find server with the id[" + signingCredentialsServerId
                + "].  Please configure this in your settings.xml");
    }
    String password = server.getPassword();
    if (StringUtils.isEmpty(password)) {
        throw new MojoExecutionException("Unable to find password in settings.xml for server with the id["
                + signingCredentialsServerId + "].");
    }

    if (password.contains("{")) {
        SettingsDecryptionRequest settingsDecryptionRequest = new DefaultSettingsDecryptionRequest(server);
        SettingsDecryptionResult result = settingsDecrypter.decrypt(settingsDecryptionRequest);
        if (result.getProblems() != null && result.getProblems().size() > 0) {
            throw new MojoExecutionException(
                    "Unable to decrypt password:" + result.getProblems().get(0).toString(),
                    result.getProblems().get(0).getException());
        }
        password = result.getServer().getPassword();
    }

    File deliverablesDirectory = new File(project.getBuild().getDirectory() + File.separator + "deliverables");

    if (signaturePath == null) {
        throw new MojoExecutionException(
                "signaturePath is null.  Please specify the <signature.path> property pointing to the directory with your signatureTools.jar");
    }

    Commandline commandLine = new Commandline("java -jar " + signaturePath.getAbsolutePath() + File.separator
            + "SignatureTool.jar -a -C -s -p " + password + " -r " + deliverablesDirectory.getAbsolutePath());

    commandLine.setWorkingDirectory(project.getBasedir());

    executeCommandLineToLogger(commandLine);

    String inputClassesDirectory = project.getBuild().getOutputDirectory();

    if (bundleCodsInOutputJar) {
        try {
            FileUtils.copyDirectory(
                    new File(project.getBuild().getDirectory() + File.separator + "deliverables"),
                    new File(inputClassesDirectory), "*.cod", "");
        } catch (IOException e) {
            throw new MojoExecutionException("Error copying files.", e);
        }
    }
}

From source file:de.jutzig.github.release.plugin.UploadMojo.java

License:Apache License

public GitHub createGithub(String serverId) throws MojoExecutionException, IOException {
    String usernameProperty = System.getProperty("username");
    String passwordProperty = System.getProperty("password");
    if (usernameProperty != null && passwordProperty != null) {
        getLog().debug("Using server credentials from system properties 'username' and 'password'");
        return GitHub.connectUsingPassword(usernameProperty, passwordProperty);
    }/*  w ww  .  ja v a 2  s .co m*/

    Server server = getServer(settings, serverId);
    if (server == null)
        throw new MojoExecutionException(
                MessageFormat.format("Server ''{0}'' not found in settings", serverId));

    getLog().debug(MessageFormat.format("Using ''{0}'' server credentials", serverId));

    try {
        SettingsDecrypter settingsDecrypter = container.lookup(SettingsDecrypter.class);
        SettingsDecryptionResult result = settingsDecrypter
                .decrypt(new DefaultSettingsDecryptionRequest(server));
        server = result.getServer();
    } catch (ComponentLookupException cle) {
        throw new MojoExecutionException("Unable to lookup SettingsDecrypter: " + cle.getMessage(), cle);
    }

    String serverUsername = server.getUsername();
    String serverPassword = server.getPassword();
    String serverAccessToken = server.getPrivateKey();
    if (StringUtils.isNotEmpty(serverUsername) && StringUtils.isNotEmpty(serverPassword))
        return GitHub.connectUsingPassword(serverUsername, serverPassword);
    else if (StringUtils.isNotEmpty(serverAccessToken))
        return GitHub.connectUsingOAuth(serverAccessToken);
    else
        throw new MojoExecutionException("Configuration for server " + serverId + " has no login credentials");
}

From source file:io.fabric8.maven.url.internal.AetherBasedResolver.java

License:Apache License

private void decryptSettings() {
    SettingsDecryptionRequest request = new DefaultSettingsDecryptionRequest(m_settings);
    SettingsDecryptionResult result = decrypter.decrypt(request);
    m_settings.setProxies(result.getProxies());
    m_settings.setServers(result.getServers());
}

From source file:io.fabric8.maven.util.MavenUtils.java

License:Apache License

public static synchronized Settings getSettings() {
    Settings settings = null;//from  w  w w . ja va  2s  .  c  om
    DefaultSettingsBuildingRequest request = new DefaultSettingsBuildingRequest();
    File userSettingsFile = safeGetFile(USER_SETTINGS_FILE);
    File globalMavenSettingsFile = safeGetFile(GLOBAL_MAVEN_SETTINGS_FILE);
    if (globalMavenSettingsFile == null) {
        globalMavenSettingsFile = safeGetFile(GLOBAL_M2_SETTINGS_FILE);
    }

    if (userSettingsFile != null) {
        request.setUserSettingsFile(userSettingsFile);
    }
    if (globalMavenSettingsFile != null) {
        request.setGlobalSettingsFile(globalMavenSettingsFile);
    }

    request.setSystemProperties(System.getProperties());

    try {
        settings = settingsBuilder.build(request).getEffectiveSettings();
    } catch (SettingsBuildingException e) {
        LOGGER.warn("Could not process settings.xml: ", e);
    }

    try {
        SettingsDecrypter settingsDecrypter = createSettingsDecrypter();
        SettingsDecryptionResult result = settingsDecrypter
                .decrypt(new DefaultSettingsDecryptionRequest(settings));
        settings.setServers(result.getServers());
        settings.setProxies(result.getProxies());
    } catch (Exception ex) {
        LOGGER.warn("Failed to decrypt maven settings.", ex);
    }
    return settings;
}

From source file:io.wcm.devops.conga.plugins.aem.maven.ProxySupport.java

License:Apache License

private static Proxy decryptProxy(Proxy proxy, SettingsDecrypter decrypter) {
    final DefaultSettingsDecryptionRequest decryptionRequest = new DefaultSettingsDecryptionRequest(proxy);
    SettingsDecryptionResult decryptedResult = decrypter.decrypt(decryptionRequest);
    return decryptedResult.getProxy();
}