github.com/cilium/cilium@v1.16.2/Documentation/contributing/development/renovate.rst (about)

     1  .. only:: not (epub or latex or html)
     2  
     3      WARNING: You are looking at unreleased Cilium documentation.
     4      Please use the official rendered version released here:
     5      https://docs.cilium.io
     6  
     7  Updating dependencies with Renovate
     8  ===================================
     9  
    10  The Cilium project uses `Renovate Bot <https://github.com/renovatebot/renovate>`__
    11  to maintain and update dependencies on a regular basis. This guide describes
    12  how to contribute a PR which modifies the Renovate configuration. There are two
    13  complementary methods for validating Renovate changes: Linting with the "local"
    14  platform, and testing the updates in your own fork.
    15  
    16  Linting locally
    17  ~~~~~~~~~~~~~~~
    18  
    19  Use the ``renovate/renovate`` docker image to perform a dry run of Renovate.
    20  This step should complete in less than ten minutes, and it will report syntax
    21  errors in the configuration.
    22  
    23  #. Make some changes to the Renovate configuration in ``.github/renovate.json5``.
    24  #. Run the renovate image against the new configuration.
    25  
    26     .. code-block:: shell-session
    27  
    28        docker run -ti -e LOG_LEVEL=debug \
    29                   -e GITHUB_COM_TOKEN="$(gh auth token)" \
    30                   -v /tmp:/tmp \
    31                   -v $(pwd):/usr/src/app \
    32                   docker.io/renovate/renovate:full \
    33                   renovate --platform=local \
    34        | tee renovate.log
    35  
    36  This approach is based on the `Local platform guide <https://docs.renovatebot.com/modules/platform/local/>`__
    37  provided by Renovate. See that guide for more details about usage and
    38  limitations.
    39  
    40  Testing on a fork
    41  ~~~~~~~~~~~~~~~~~
    42  
    43  For most changes to the Renovate configuration, you will likely need to test
    44  the changes on your own fork of Cilium.
    45  
    46  #. Make some changes to the Renovate configuration. Renovate is configured in
    47     ``.github/renovate.json5``.
    48  #. (Optional) Disable unrelated configuration. For an example, see
    49     `this commit <https://github.com/joestringer/cilium/commit/4a80859a882c92973dd5b25f5c31de614abcf5de>`__.
    50  #. Push the branch to the default branch of your own fork.
    51  #. `Enable the Renovate GitHub app <https://github.com/apps/renovate>`__ in
    52     your GitHub account.
    53  #. Ensure that Renovate is enabled in the repository settings in the
    54     `Renovate Dashboard <https://app.renovatebot.com/dashboard>`__.
    55  #. Trigger the Renovate app from the dashboard or push a fresh commit to your
    56     fork's default branch to trigger Renovate again.
    57  #. Use the dashboard to trigger Renovate to create a PR on your fork and
    58     validate that the proposed PRs are updating the correct parts of the codebase.
    59  
    60  Once you have tested that the Renovate configuration works in your own fork,
    61  create a PR against Cilium and provide links in the description to inform
    62  reviewers about the testing you have performed on the changes.