forgejo-federation/docs/content/doc/packages/vagrant.en-us.md
Lunny Xiao e8433b7fe6
Restructure documentation. Now the documentation has installation, administration, usage, development, contributing the 5 main parts (#23629)
- **Installation**: includes how to install Gitea and related other
tools, also includes upgrade Gitea
- **Administration**: includes how to configure Gitea, customize Gitea
and manage Gitea instance out of Gitea admin UI
- **Usage**: includes how to use Gitea's functionalities. A sub
documentation is about packages, in future we could also include CI/CD
and others.
- **Development**: includes how to integrate with Gitea's API, how to
develop new features within Gitea
- **Contributing**: includes how to contribute code to Gitea
repositories.

After this is merged, I think we can have a sub-documentation of `Usage`
part named `Actions` to describe how to use Gitea actions

---------

Co-authored-by: John Olheiser <john.olheiser@gmail.com>
2023-03-23 23:18:24 +08:00

2.2 KiB

date title slug draft toc menu
2022-08-23T00:00:00+00:00 Vagrant Packages Repository usage/packages/vagrant false false
sidebar
parent name weight identifier
packages Vagrant 120 vagrant

Vagrant Packages Repository

Publish Vagrant packages for your user or organization.

Table of Contents

{{< toc >}}

Requirements

To work with the Vagrant package registry, you need Vagrant and a tool to make HTTP requests like curl.

Publish a package

Publish a Vagrant box by performing a HTTP PUT request to the registry:

PUT https://gitea.example.com/api/packages/{owner}/vagrant/{package_name}/{package_version}/{provider}.box
Parameter Description
owner The owner of the package.
package_name The package name.
package_version The package version, semver compatible.
provider One of the supported provider names.

Example for uploading a Hyper-V box:

curl --user your_username:your_password_or_token \
     --upload-file path/to/your/vagrant.box \
     https://gitea.example.com/api/packages/testuser/vagrant/test_system/1.0.0/hyperv.box

You cannot publish a box if a box of the same name, version and provider already exists. You must delete the existing package first.

Install a package

To install a box from the package registry, execute the following command:

vagrant box add "https://gitea.example.com/api/packages/{owner}/vagrant/{package_name}"
Parameter Description
owner The owner of the package.
package_name The package name.

For example:

vagrant box add "https://gitea.example.com/api/packages/testuser/vagrant/test_system"

This will install the latest version of the package. To add a specific version, use the --box-version parameter. If the registry is private you can pass your [personal access token]({{< relref "doc/development/api-usage.en-us.md#authentication" >}}) in the VAGRANT_CLOUD_TOKEN environment variable.

Supported commands

vagrant box add