codeclou / common-config-for-nexus-oss

A set of REST API scripts to configure your Sonatype Nexus Repository Manager OSS after initial setup.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

📣 End of Lifetime Notice: We no longer provide support for this repository. It will be made readonly, you can still fork it and adapt it to your needs.


common-config-for-nexus-oss

A set of REST API scripts to configure your Sonatype Nexus Repository Manager OSS after initial setup.


 

Prerequisites

To run the bash scripts provided by this repo you need to provide the following Environment variables. At best put the in your ~/.bashrc

export NEXUS_BASE_URL="http://nexus.home.codeclou.io:8333" # base URL to Nexus OSS
export NEXUS_AUTH="admin:admin123"                        # username + password

Have shinto-cli and python installed.

pip install shinto-cli
j2 --version

 

Usage

There are several scripts for different purposes.

(1) Maven Proxy Repositories

To create Maven Proxy Repositories as defined in proxy-repositories.json run:

#
# CLONE
#
git clone https://github.com/codeclou/common-config-for-nexus-oss.git
cd common-config-for-nexus-oss/maven

#
# CREATE PROXY REPOSITORIES
#
bash create-proxy-repositories.sh

Now you have a Repository Group called 'all' with URL: http://nexus.home.codeclou.io:8333/repository/all/

You can use that in your ~/.m2/settings.xml like so:

<?xml version="1.0" encoding="UTF-8"?>
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.1.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <mirrors>
    <mirror>
      <mirrorOf>*</mirrorOf>
      <name>remote-repos</name>
      <id>remote-repos</id>
      <url>http://nexus.home.codeclou.io:8333/repository/all/</url>      
    </mirror>
  </mirrors>
</settings>

 

Todo

  • Docker Hub Proxy createDockerProxy(String name, String remoteUrl...)
  • Npmjs.com Proxy createNpmProxy(String name, String remoteUrl)
  • Python createPyPiProxy(String name, String remoteUrl)
  • Ruby createRubygemsProxy(String name, String remoteUrl)

 

Trademarks and Third Party Licenses

  • Sonatype Nexus OSS
  • Apache Maven
  • Oracle Java JDK 8
    • Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
    • Please check yourself for corresponding Licenses and Terms of Use at www.oracle.com.
  • Docker
    • Docker and the Docker logo are trademarks or registered trademarks of Docker, Inc. in the United States and/or other countries. Docker, Inc. and other parties may also have trademark rights in other terms used herein.
    • Please check yourself for corresponding Licenses and Terms of Use at www.docker.com.
  • Ubuntu
  • Apple

 

License

MIT © Bernhard Grünewaldt

About

A set of REST API scripts to configure your Sonatype Nexus Repository Manager OSS after initial setup.

License:MIT License


Languages

Language:Shell 61.0%Language:Jinja 39.0%