Skip to content

Commit

Permalink
[dev2] [Part 4] Configuration files: remotes.json (#2963)
Browse files Browse the repository at this point in the history
* remotes and minor fixes

* wip

* improved

* Removed MesonDeps conan-io/conan#13134
  • Loading branch information
franramirez688 authored Feb 15, 2023
1 parent 77eb608 commit 807f3b3
Show file tree
Hide file tree
Showing 7 changed files with 50 additions and 127 deletions.
2 changes: 2 additions & 0 deletions reference/commands/list.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _reference_commands_list:

conan list
==========

Expand Down
1 change: 1 addition & 0 deletions reference/config_files.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ These are the most important configuration files, used to customize conan.
config_files/global_conf
config_files/profiles
config_files/settings
config_files/remotes
9 changes: 6 additions & 3 deletions reference/config_files/global_conf.rst
Original file line number Diff line number Diff line change
Expand Up @@ -228,22 +228,25 @@ effect because it's the first one evaluated, and after that, Conan is overriding
general one, so it deserves to pay special attention to the order.


.. _reference_config_files_global_conf_ssl_certificates:

Configuration of client certificates
------------------------------------

Conan supports client TLS certificates. You can configure the path to your existing *Cacert* file and/or your client
certificate (and the key) using the following configuration variables:

* ``core.net.http:cacert_path``: Path containing a custom Cacert file.
* ``core.net.http:client_cert``: Path or tuple of files containing a client cert (and key).
* ``core.net.http:client_cert``: Path or tuple of files containing a client certificate (and the key). See more details in
`Python requests and Client Side Certificates <https://requests.readthedocs.io/en/latest/user/advanced/#client-side-certificates>`_

For instance:

.. code-block:: text
:caption: **[CONAN_HOME]/global.conf**
core.net.http:cacert_path=/path/to/cacert_file
core.net.http:client_cert=/path/to/client_certificate
core.net.http:cacert_path=/path/to/cacert.pem
core.net.http:client_cert=('/path/client.cert', '/path/client.key')
.. seealso::
Expand Down
39 changes: 39 additions & 0 deletions reference/config_files/remotes.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
.. _reference_config_files_remotes_json:

remotes.json
============

The **remotes.json** file is located in the Conan user home directory, e.g., *[CONAN_HOME]/remotes.json*.

The default file created by Conan looks like this:

.. code-block:: json
:caption: **remotes.json**
{
"remotes": [
{
"name": "conancenter",
"url": "https://center.conan.io",
"verify_ssl": true
}
]
}
Essentially, it tells Conan where to list/upload/download the recipes/binaries from the remotes specified by their URLs.

The fields for each remote are:

* ``name`` (Required, ``string`` value): Name of the remote. This name will be used in commands
like :ref:`reference_commands_list`, e.g., :command:`conan list zlib/1.2.11 --remote my_remote_name`.
* ``url`` (Required, ``string`` value): indicates the URL to be used by Conan to search for the recipes/binaries.
* ``verify_ssl`` (Required, ``bool`` value): Verify SSL certificate of the specified url.
* ``disabled`` (Optional, ``bool`` value, ``false`` by default): If the remote is enabled or not to be used by commands
like search, list, download and upload. Notice that a disabled remote can be used to authenticate against it even
if it's disabled.


.. seealso::

- :ref:`How to manage SSL (TLS) certificates <reference_config_files_global_conf_ssl_certificates>`
- :ref:`How to manage remotes.json through CLI: conan remotes <reference_commands_remote>`.
4 changes: 2 additions & 2 deletions reference/config_files/settings.rst
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ Operating systems
-----------------

``baremetal`` operating system is a convention meaning that the binaries run directly
on the hardware, without an operating system or equivalent layer. This is to differentiate to the ``None`` value,
on the hardware, without an operating system or equivalent layer. This is to differentiate to the ``null`` value,
which is associated to the "this value is not defined" semantics. ``baremetal`` is a common name convention for
embedded microprocessors and microcontrollers' code. It is expected that users might customize the space inside the
``baremetal`` setting with further subsettings to specify their specific hardware platforms, boards, families, etc.
Expand Down Expand Up @@ -189,7 +189,7 @@ This can be configured in your profiles with the ``tools.microsoft.msbuild:vs_ve
In this case, the ``vcvars`` will activate the Visual Studio 16 installation, but the ``190`` compiler version will still be used
because the necessary ``toolset=v140`` will be set.

The settings define the last digit ``update: [None, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]``, which by default is ``None`` and means that Conan
The settings define the last digit ``update: [null, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]``, which by default is ``null`` and means that Conan
assumes binary compatibility for the compiler patches, which works in general for the Microsoft compilers. For cases where finer
control is desired, you can just add the ``update`` part to your profiles:

Expand Down
1 change: 0 additions & 1 deletion reference/tools/meson.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,4 @@ conan.tools.meson
:maxdepth: 2

meson/mesontoolchain
meson/mesondeps
meson/meson
121 changes: 0 additions & 121 deletions reference/tools/meson/mesondeps.rst

This file was deleted.

0 comments on commit 807f3b3

Please sign in to comment.