• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Devaka Cooray
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
  • paul wheaton
  • Jeanne Boyarsky
  • Tim Cooke
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Tim Moores
  • Mikalai Zaikin
  • Carey Brown

Artipie - new open source binary repository manager

Posts: 6
IntelliJ IDE Notepad Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi all!

Allow me to introduce a new binary repository manager - Artipie https://github.com/artipie/artipie.

Artipie is not just a binary artifact web server - it's an artifact management constructor, which comprises many components built into server assembly. It is an open-source project that started in 2020 and is actively growing.
Artipie supports the following types of repositories:
  • Docker - private Docker registry for images.
  • Maven - Java, Kotlin, Groovy, Scala, Clojure artifacts and dependencies of varying types like a .jar, .war, .klib and etc.
  • NPM - JavaScript code sharing and packages store.
  • PyPI - Python packages index.
  • Anaconda - built packages for data science for Python, R, Lua, C, C++, etc.
  • RPM - .rpm packages repository for RHEL, PCLinuxOS, Fedora, AlmaLinux, CentOS, openSUSE, OpenMandriva, Oracle Linux, etc.
  • Gem - RubyGem hosting service for Ruby.
  • Go - Go package storage.
  • Files (binary) storage - host any files you like.
  • Helm - Helm charts repository.
  • NuGet - hosting service for .NET packages.
  • Debian - package repository for Debian-based Linux distributions: Ubuntu, MX Linux, Mint, Raspberry Pi OS, Parrot OS, etc.
  • Composer - package source for PHP packages.

  • But, due to we all love Java, I'll like to stay on how to create the own Maven repository with Artipie.

    First, we have to get the Artipie jar file that you can find on this page https://github.com/artipie/artipie/releases. In the next step, we should define an Artipie metadata configuration that is represented by a `yaml` file. So, let's create a folder for Artipie config `/Users/username/artipie/config` and put inside this folder the `my-artipie.yaml` file with the following content:

  • Field `type` describes which type of storage Artipie will use to get configuration of repositories. In our case, it's `fs`— the file system storage.
  • Field `path` points to the directory in a file system where repositories config files will be stored.

  • Now, we are ready to define a maven repository config that is also represented by a 'yaml' file:

  • Field `type` describes a repository type, in our case it's `maven`.
  • Field `storage` defines a file storage that uses the local maven folder as its path.

  • We have to call this 'repository.yaml' file and place it in the folder '/Users/username/artipie/repo'. Artipie will use the file name as a Maven repository name.

    Everything is done! We are now ready to start Artipie. Execute the following command in a terminal:

  • `--config-file` parameter points to the Artipie main configuration file.
  • `--port` parameter defines the port to start the service.

  • That is all. Now, you have your maven repository!
    Then you may add the repository's description to ‘/.m2/settings.xml’ or add the according section to a project pom.

    And use this repository as a regular remote Maven repository.

    You can find more information about Artipie on our project wiki page https://github.com/artipie/artipie/wiki.
    If you like Artipie, please, support us and give star to our project!

    I don't like that guy. The tiny ad agrees with me.
    a bit of art, as a gift, that will fit in a stocking
      Bookmark Topic Watch Topic
    • New Topic