")
102 | if templ_7745c5c3_Err != nil {
103 | return templ_7745c5c3_Err
104 | }
105 | return templ_7745c5c3_Err
106 | })
107 | }
108 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/logger.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 | import (
13 | "log"
14 | "net/http"
15 | "time"
16 | )
17 |
18 | func Logger(inner http.Handler, name string) http.Handler {
19 | return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
20 | start := time.Now()
21 |
22 | inner.ServeHTTP(w, r)
23 |
24 | log.Printf(
25 | "%s %s %s %s",
26 | r.Method,
27 | r.RequestURI,
28 | name,
29 | time.Since(start),
30 | )
31 | })
32 | }
33 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_add_release_request.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type AddReleaseRequest struct {
16 |
17 | File string `json:"file,omitempty"`
18 | }
19 |
20 | // AssertAddReleaseRequestRequired checks if the required fields are not zero-ed
21 | func AssertAddReleaseRequestRequired(obj AddReleaseRequest) error {
22 | return nil
23 | }
24 |
25 | // AssertAddReleaseRequestConstraints checks if the values respects the defined constraints
26 | func AssertAddReleaseRequestConstraints(obj AddReleaseRequest) error {
27 | return nil
28 | }
29 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_get_file_400_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type GetFile400Response struct {
16 |
17 | Message string `json:"message,omitempty"`
18 |
19 | Errors []string `json:"errors,omitempty"`
20 | }
21 |
22 | // AssertGetFile400ResponseRequired checks if the required fields are not zero-ed
23 | func AssertGetFile400ResponseRequired(obj GetFile400Response) error {
24 | return nil
25 | }
26 |
27 | // AssertGetFile400ResponseConstraints checks if the values respects the defined constraints
28 | func AssertGetFile400ResponseConstraints(obj GetFile400Response) error {
29 | return nil
30 | }
31 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_get_file_404_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type GetFile404Response struct {
16 |
17 | Message string `json:"message,omitempty"`
18 |
19 | Errors []string `json:"errors,omitempty"`
20 | }
21 |
22 | // AssertGetFile404ResponseRequired checks if the required fields are not zero-ed
23 | func AssertGetFile404ResponseRequired(obj GetFile404Response) error {
24 | return nil
25 | }
26 |
27 | // AssertGetFile404ResponseConstraints checks if the values respects the defined constraints
28 | func AssertGetFile404ResponseConstraints(obj GetFile404Response) error {
29 | return nil
30 | }
31 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_module_minimal.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type ModuleMinimal struct {
16 |
17 | // Relative URL for this Module resource
18 | Uri string `json:"uri,omitempty"`
19 |
20 | // Unique textual identifier for this Module resource
21 | Slug string `json:"slug,omitempty"`
22 | }
23 |
24 | // AssertModuleMinimalRequired checks if the required fields are not zero-ed
25 | func AssertModuleMinimalRequired(obj ModuleMinimal) error {
26 | return nil
27 | }
28 |
29 | // AssertModuleMinimalConstraints checks if the values respects the defined constraints
30 | func AssertModuleMinimalConstraints(obj ModuleMinimal) error {
31 | return nil
32 | }
33 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_add_search_filter_409_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type AddSearchFilter409Response struct {
16 |
17 | Message string `json:"message,omitempty"`
18 |
19 | Errors []string `json:"errors,omitempty"`
20 | }
21 |
22 | // AssertAddSearchFilter409ResponseRequired checks if the required fields are not zero-ed
23 | func AssertAddSearchFilter409ResponseRequired(obj AddSearchFilter409Response) error {
24 | return nil
25 | }
26 |
27 | // AssertAddSearchFilter409ResponseConstraints checks if the values respects the defined constraints
28 | func AssertAddSearchFilter409ResponseConstraints(obj AddSearchFilter409Response) error {
29 | return nil
30 | }
31 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_module_superseded_by.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type ModuleSupersededBy struct {
16 |
17 | // Relative URL for this Module resource
18 | Uri string `json:"uri,omitempty"`
19 |
20 | // Unique textual identifier for this Module resource
21 | Slug string `json:"slug,omitempty"`
22 | }
23 |
24 | // AssertModuleSupersededByRequired checks if the required fields are not zero-ed
25 | func AssertModuleSupersededByRequired(obj ModuleSupersededBy) error {
26 | return nil
27 | }
28 |
29 | // AssertModuleSupersededByConstraints checks if the values respects the defined constraints
30 | func AssertModuleSupersededByConstraints(obj ModuleSupersededBy) error {
31 | return nil
32 | }
33 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_get_user_search_filters_401_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type GetUserSearchFilters401Response struct {
16 |
17 | Message string `json:"message,omitempty"`
18 |
19 | Errors []string `json:"errors,omitempty"`
20 | }
21 |
22 | // AssertGetUserSearchFilters401ResponseRequired checks if the required fields are not zero-ed
23 | func AssertGetUserSearchFilters401ResponseRequired(obj GetUserSearchFilters401Response) error {
24 | return nil
25 | }
26 |
27 | // AssertGetUserSearchFilters401ResponseConstraints checks if the values respects the defined constraints
28 | func AssertGetUserSearchFilters401ResponseConstraints(obj GetUserSearchFilters401Response) error {
29 | return nil
30 | }
31 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_delete_user_search_filter_403_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type DeleteUserSearchFilter403Response struct {
16 |
17 | Message string `json:"message,omitempty"`
18 |
19 | Errors []string `json:"errors,omitempty"`
20 | }
21 |
22 | // AssertDeleteUserSearchFilter403ResponseRequired checks if the required fields are not zero-ed
23 | func AssertDeleteUserSearchFilter403ResponseRequired(obj DeleteUserSearchFilter403Response) error {
24 | return nil
25 | }
26 |
27 | // AssertDeleteUserSearchFilter403ResponseConstraints checks if the values respects the defined constraints
28 | func AssertDeleteUserSearchFilter403ResponseConstraints(obj DeleteUserSearchFilter403Response) error {
29 | return nil
30 | }
31 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_search_filter_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type SearchFilterResponse struct {
16 |
17 | // The array of user search filter.
18 | UserSearchFilters []SearchFilter `json:"user_search_filters,omitempty"`
19 | }
20 |
21 | // AssertSearchFilterResponseRequired checks if the required fields are not zero-ed
22 | func AssertSearchFilterResponseRequired(obj SearchFilterResponse) error {
23 | for _, el := range obj.UserSearchFilters {
24 | if err := AssertSearchFilterRequired(el); err != nil {
25 | return err
26 | }
27 | }
28 | return nil
29 | }
30 |
31 | // AssertSearchFilterResponseConstraints checks if the values respects the defined constraints
32 | func AssertSearchFilterResponseConstraints(obj SearchFilterResponse) error {
33 | return nil
34 | }
35 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_release_minimal.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type ReleaseMinimal struct {
16 |
17 | // Relative URL for this Release resource
18 | Uri string `json:"uri,omitempty"`
19 |
20 | // Unique textual identifier for this Release resource
21 | Slug string `json:"slug,omitempty"`
22 |
23 | // Relative or absolute URL to download this release's tarball
24 | FileUri string `json:"file_uri,omitempty"`
25 | }
26 |
27 | // AssertReleaseMinimalRequired checks if the required fields are not zero-ed
28 | func AssertReleaseMinimalRequired(obj ReleaseMinimal) error {
29 | return nil
30 | }
31 |
32 | // AssertReleaseMinimalConstraints checks if the values respects the defined constraints
33 | func AssertReleaseMinimalConstraints(obj ReleaseMinimal) error {
34 | return nil
35 | }
36 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_deprecation_request_params.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type DeprecationRequestParams struct {
16 |
17 | // Reason for deprecation
18 | Reason *string `json:"reason,omitempty"`
19 |
20 | // Slug identifying a replacement Module. Accepts legacy (case-sensitive) module naming.
21 | ReplacementSlug *string `json:"replacement_slug,omitempty"`
22 | }
23 |
24 | // AssertDeprecationRequestParamsRequired checks if the required fields are not zero-ed
25 | func AssertDeprecationRequestParamsRequired(obj DeprecationRequestParams) error {
26 | return nil
27 | }
28 |
29 | // AssertDeprecationRequestParamsConstraints checks if the values respects the defined constraints
30 | func AssertDeprecationRequestParamsConstraints(obj DeprecationRequestParams) error {
31 | return nil
32 | }
33 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_release_plan_abbreviated.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type ReleasePlanAbbreviated struct {
16 |
17 | // URL path to the full metadata for this plan
18 | Uri string `json:"uri,omitempty"`
19 |
20 | // The name of the plan, including the module name
21 | Name string `json:"name,omitempty"`
22 |
23 | // Whether this plan is private
24 | Private bool `json:"private,omitempty"`
25 | }
26 |
27 | // AssertReleasePlanAbbreviatedRequired checks if the required fields are not zero-ed
28 | func AssertReleasePlanAbbreviatedRequired(obj ReleasePlanAbbreviated) error {
29 | return nil
30 | }
31 |
32 | // AssertReleasePlanAbbreviatedConstraints checks if the values respects the defined constraints
33 | func AssertReleasePlanAbbreviatedConstraints(obj ReleasePlanAbbreviated) error {
34 | return nil
35 | }
36 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_deprecation_request.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type DeprecationRequest struct {
16 |
17 | // Action to take on resource. 'deprecate' is currently the only valid option.
18 | Action string `json:"action,omitempty"`
19 |
20 | Params *DeprecationRequestParams `json:"params,omitempty"`
21 | }
22 |
23 | // AssertDeprecationRequestRequired checks if the required fields are not zero-ed
24 | func AssertDeprecationRequestRequired(obj DeprecationRequest) error {
25 | if obj.Params != nil {
26 | if err := AssertDeprecationRequestParamsRequired(*obj.Params); err != nil {
27 | return err
28 | }
29 | }
30 | return nil
31 | }
32 |
33 | // AssertDeprecationRequestConstraints checks if the values respects the defined constraints
34 | func AssertDeprecationRequestConstraints(obj DeprecationRequest) error {
35 | return nil
36 | }
37 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_module_owner.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type ModuleOwner struct {
16 |
17 | // Relative URL for this User resource
18 | Uri string `json:"uri,omitempty"`
19 |
20 | // Unique textual identifier for this User resource
21 | Slug string `json:"slug,omitempty"`
22 |
23 | // Username for this User resource
24 | Username string `json:"username,omitempty"`
25 |
26 | // Gravatar ID, learn more at [https://gravatar.com/]()
27 | GravatarId string `json:"gravatar_id,omitempty"`
28 | }
29 |
30 | // AssertModuleOwnerRequired checks if the required fields are not zero-ed
31 | func AssertModuleOwnerRequired(obj ModuleOwner) error {
32 | return nil
33 | }
34 |
35 | // AssertModuleOwnerConstraints checks if the values respects the defined constraints
36 | func AssertModuleOwnerConstraints(obj ModuleOwner) error {
37 | return nil
38 | }
39 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_get_users_200_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type GetUsers200Response struct {
16 |
17 | Pagination GetUsers200ResponsePagination `json:"pagination,omitempty"`
18 |
19 | Results []User `json:"results,omitempty"`
20 | }
21 |
22 | // AssertGetUsers200ResponseRequired checks if the required fields are not zero-ed
23 | func AssertGetUsers200ResponseRequired(obj GetUsers200Response) error {
24 | if err := AssertGetUsers200ResponsePaginationRequired(obj.Pagination); err != nil {
25 | return err
26 | }
27 | for _, el := range obj.Results {
28 | if err := AssertUserRequired(el); err != nil {
29 | return err
30 | }
31 | }
32 | return nil
33 | }
34 |
35 | // AssertGetUsers200ResponseConstraints checks if the values respects the defined constraints
36 | func AssertGetUsers200ResponseConstraints(obj GetUsers200Response) error {
37 | return nil
38 | }
39 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_user_abbreviated.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type UserAbbreviated struct {
16 |
17 | // Relative URL for this User resource
18 | Uri string `json:"uri,omitempty"`
19 |
20 | // Unique textual identifier for this User resource
21 | Slug string `json:"slug,omitempty"`
22 |
23 | // Username for this User resource
24 | Username string `json:"username,omitempty"`
25 |
26 | // Gravatar ID, learn more at [https://gravatar.com/]()
27 | GravatarId string `json:"gravatar_id,omitempty"`
28 | }
29 |
30 | // AssertUserAbbreviatedRequired checks if the required fields are not zero-ed
31 | func AssertUserAbbreviatedRequired(obj UserAbbreviated) error {
32 | return nil
33 | }
34 |
35 | // AssertUserAbbreviatedConstraints checks if the values respects the defined constraints
36 | func AssertUserAbbreviatedConstraints(obj UserAbbreviated) error {
37 | return nil
38 | }
39 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_search_filter.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type SearchFilter struct {
16 |
17 | // The unique identifier for the search filter.
18 | Id int32 `json:"id,omitempty"`
19 |
20 | // The hash definining the search filter criteria.
21 | Filter map[string]interface{} `json:"filter,omitempty"`
22 |
23 | // Indicates whether the search filter is active.
24 | Active bool `json:"active,omitempty"`
25 |
26 | // The timestamp indicating when the search filter was created.
27 | CreatedAt string `json:"created_at,omitempty"`
28 | }
29 |
30 | // AssertSearchFilterRequired checks if the required fields are not zero-ed
31 | func AssertSearchFilterRequired(obj SearchFilter) error {
32 | return nil
33 | }
34 |
35 | // AssertSearchFilterConstraints checks if the values respects the defined constraints
36 | func AssertSearchFilterConstraints(obj SearchFilter) error {
37 | return nil
38 | }
39 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_get_modules_200_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type GetModules200Response struct {
16 |
17 | Pagination GetModules200ResponsePagination `json:"pagination,omitempty"`
18 |
19 | Results []Module `json:"results,omitempty"`
20 | }
21 |
22 | // AssertGetModules200ResponseRequired checks if the required fields are not zero-ed
23 | func AssertGetModules200ResponseRequired(obj GetModules200Response) error {
24 | if err := AssertGetModules200ResponsePaginationRequired(obj.Pagination); err != nil {
25 | return err
26 | }
27 | for _, el := range obj.Results {
28 | if err := AssertModuleRequired(el); err != nil {
29 | return err
30 | }
31 | }
32 | return nil
33 | }
34 |
35 | // AssertGetModules200ResponseConstraints checks if the values respects the defined constraints
36 | func AssertGetModules200ResponseConstraints(obj GetModules200Response) error {
37 | return nil
38 | }
39 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_get_releases_200_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type GetReleases200Response struct {
16 |
17 | Pagination GetReleases200ResponsePagination `json:"pagination,omitempty"`
18 |
19 | Results []Release `json:"results,omitempty"`
20 | }
21 |
22 | // AssertGetReleases200ResponseRequired checks if the required fields are not zero-ed
23 | func AssertGetReleases200ResponseRequired(obj GetReleases200Response) error {
24 | if err := AssertGetReleases200ResponsePaginationRequired(obj.Pagination); err != nil {
25 | return err
26 | }
27 | for _, el := range obj.Results {
28 | if err := AssertReleaseRequired(el); err != nil {
29 | return err
30 | }
31 | }
32 | return nil
33 | }
34 |
35 | // AssertGetReleases200ResponseConstraints checks if the values respects the defined constraints
36 | func AssertGetReleases200ResponseConstraints(obj GetReleases200Response) error {
37 | return nil
38 | }
39 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_get_release_plans_200_response.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type GetReleasePlans200Response struct {
16 |
17 | Pagination GetReleasePlans200ResponsePagination `json:"pagination,omitempty"`
18 |
19 | Results []ReleasePlan `json:"results,omitempty"`
20 | }
21 |
22 | // AssertGetReleasePlans200ResponseRequired checks if the required fields are not zero-ed
23 | func AssertGetReleasePlans200ResponseRequired(obj GetReleasePlans200Response) error {
24 | if err := AssertGetReleasePlans200ResponsePaginationRequired(obj.Pagination); err != nil {
25 | return err
26 | }
27 | for _, el := range obj.Results {
28 | if err := AssertReleasePlanRequired(el); err != nil {
29 | return err
30 | }
31 | }
32 | return nil
33 | }
34 |
35 | // AssertGetReleasePlans200ResponseConstraints checks if the values respects the defined constraints
36 | func AssertGetReleasePlans200ResponseConstraints(obj GetReleasePlans200Response) error {
37 | return nil
38 | }
39 |
--------------------------------------------------------------------------------
/pkg/gen/v3/openapi/model_release_plan.go:
--------------------------------------------------------------------------------
1 | /*
2 | * Puppet Forge v3 API
3 | *
4 | * ## Introduction The Puppet Forge API (hereafter referred to as the Forge API) provides quick access to all the data on the Puppet Forge via a RESTful interface. Using the Forge API, you can write scripts and tools that interact with the Puppet Forge website. The Forge API's current version is `v3`. It is considered regression-stable, meaning that the returned data is guaranteed to include the fields described in the schemas on this page; however, additional data might be added in the future and clients must ignore any properties they do not recognize. ## OpenAPI Specification The Puppet Forge v3 API is described by an [OpenAPI 3.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.0.md) formatted specification file. The most up-to-date version of this specification file can be accessed at [https://forgeapi.puppet.com/v3/openapi.json](/v3/openapi.json). ## Features * The API is accessed over HTTPS via either the `forgeapi.puppet.com` (IPv4 or IPv6). All data is returned in JSON format. * Blank fields are included as `null`. * Nested resources may use an abbreviated representation. A link to the full representation for the resource is always included. * All timestamps in JSON responses are returned in ISO 8601 format: `YYYY-MM-DD HH:MM:SS ±HHMM`. * The HTTP response headers include caching hints for conditional requests. ## Concepts and Terminology * **Module**: Modules are self-contained bundles of code and data with a specific directory structure. Modules are identified by a combination of the author's username and the module's name, separated by a hyphen. For example: `puppetlabs-apache` * **Release**: A single, specific version of a module is called a Release. Releases are identified by a combination of the module identifier (see above) and the Release version, separated by a hyphen. For example: `puppetlabs-apache-4.0.0` ## Errors The Puppet Forge API follows [RFC 2616](https://tools.ietf.org/html/rfc2616) and [RFC 6585](https://tools.ietf.org/html/rfc6585). Error responses are served with a `4xx` or `5xx` status code, and are sent as a JSON document with a content type of `application/json`. The error document contains the following top-level keys and values: * `message`: a string value that summarizes the problem * `errors`: a list (array) of strings containing additional details describing the underlying cause(s) of the failure An example error response is shown below: ```json { \"message\": \"400 Bad Request\", \"errors\": [ \"Cannot parse request body as JSON\" ] } ``` ## User-Agent Required All API requests must include a valid `User-Agent` header. Requests with no `User-Agent` header will be rejected. The `User-Agent` header helps identify your application or library, so we can communicate with you if necessary. If your use of the API is informal or personal, we recommend using your username as the value for the `User-Agent` header. User-Agent headers are a list of one or more product descriptions, generally taking this form: ``` / (comments) ``` For example, the following are all useful User-Agent values: ``` MyApplication/0.0.0 Her/0.6.8 Faraday/0.8.8 Ruby/1.9.3-p194 (i386-linux) My-Library-Name/1.2.4 myusername ``` ## Hostname Configuration Most tools that interact with the Forge API allow specification of the hostname to use. You can configure a few common tools to use a specified hostname as follows: For **Puppet Enterprise** users, in [r10k](https://puppet.com/docs/pe/latest/r10k_customize_config.html#r10k_configuring_forge_settings) or [Code Manager](https://puppet.com/docs/pe/latest/code_mgr_customizing.html#config_forge_settings), specify `forge_settings` in Hiera: ``` pe_r10k::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` or ``` puppet_enterprise::master::code_manager::forge_settings: baseurl: 'https://forgeapi.puppet.com' ``` If you are an **open source Puppet** user using r10k, you'll need to [edit your r10k.yaml directly](https://github.com/puppetlabs/r10k/blob/main/doc/dynamic-environments/configuration.mkd#forge): ``` forge: baseurl: 'https://forgeapi.puppet.com' ``` or set the appropriate class param for the [open source r10k module](https://forge.puppet.com/puppet/r10k#forge_settings): ``` $forge_settings = { 'baseurl' => 'https://forgeapi.puppet.com', } ``` In [**Bolt**](https://puppet.com/docs/bolt/latest/bolt_installing_modules.html#install-forge-modules-from-an-alternate-forge), set a `baseurl` for the Forge in `bolt-project.yaml`: ``` module-install: forge: baseurl: https://forgeapi.puppet.com ``` Using `puppet config`: ``` $ puppet config set module_repository https://forgeapi.puppet.com ```
5 | *
6 | * API version: 29
7 | * Generated by: OpenAPI Generator (https://openapi-generator.tech)
8 | */
9 |
10 | package gorge
11 |
12 |
13 |
14 |
15 | type ReleasePlan struct {
16 |
17 | // Relative URL for this Plan resource
18 | Uri string `json:"uri,omitempty"`
19 |
20 | // The name of the plan, including the module name
21 | Name string `json:"name,omitempty"`
22 |
23 | // Path to this Plan within the module's file structure
24 | Filename string `json:"filename,omitempty"`
25 |
26 | PlanMetadata ReleasePlanPlanMetadata `json:"plan_metadata,omitempty"`
27 |
28 | // Whether this plan is private
29 | Private bool `json:"private,omitempty"`
30 | }
31 |
32 | // AssertReleasePlanRequired checks if the required fields are not zero-ed
33 | func AssertReleasePlanRequired(obj ReleasePlan) error {
34 | if err := AssertReleasePlanPlanMetadataRequired(obj.PlanMetadata); err != nil {
35 | return err
36 | }
37 | return nil
38 | }
39 |
40 | // AssertReleasePlanConstraints checks if the values respects the defined constraints
41 | func AssertReleasePlanConstraints(obj ReleasePlan) error {
42 | return nil
43 | }
44 |
--------------------------------------------------------------------------------