From eefca9bb081d734fd42de7d6e277828fba9bb0bd Mon Sep 17 00:00:00 2001 From: "Jerry J. Harrow" <84593277+jerryharrow@users.noreply.github.com> Date: Mon, 3 Oct 2022 12:02:49 -0400 Subject: [PATCH 1/2] docs: Add PBS documentation [FOUNDENG-184] This is the documentation for our PBS scheduler support as an alternative to Slurm which is now fully functional. --- .../deploy-cluster/index.rst | 5 +- .../install-on-slurm.rst | 103 +++++--------- .../sysadmin-deploy-on-slurm/overview.rst | 26 ++-- .../slurm-requirements.rst | 131 +++++++++++++++++- .../config/master-config-reference.rst | 47 ++++--- docs/release-notes/FOUNDENG-184-PBS.rst | 11 ++ 6 files changed, 215 insertions(+), 108 deletions(-) create mode 100644 docs/release-notes/FOUNDENG-184-PBS.rst diff --git a/docs/cluster-setup-guide/deploy-cluster/index.rst b/docs/cluster-setup-guide/deploy-cluster/index.rst index 6dd5aaaf984..e1f9f88eb60 100644 --- a/docs/cluster-setup-guide/deploy-cluster/index.rst +++ b/docs/cluster-setup-guide/deploy-cluster/index.rst @@ -16,7 +16,8 @@ environments: +------------------------------------------+-----------------------------------------------------+ | :doc:`sysadmin-deploy-on-k8s/overview` | How to run Determined on Kubernetes. | +------------------------------------------+-----------------------------------------------------+ -| :doc:`sysadmin-deploy-on-slurm/overview` | How to run Determined on Slurm. | +| :doc:`sysadmin-deploy-on-slurm/overview` | How to run Determined on an HPC cluster | +| | (Slurm/PBS). | +------------------------------------------+-----------------------------------------------------+ .. toctree:: @@ -26,4 +27,4 @@ environments: Deploy on AWS Deploy on GCP Deploy on Kubernetes - Deploy on Slurm + Deploy on Slurm/PBS diff --git a/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/install-on-slurm.rst b/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/install-on-slurm.rst index 94244445a8b..41bec998557 100644 --- a/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/install-on-slurm.rst +++ b/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/install-on-slurm.rst @@ -1,13 +1,14 @@ .. _install-on-slurm: -############################# - Install Determined on Slurm -############################# +################################# + Install Determined on Slurm/PBS +################################# -This document describes how to deploy Determined on a Slurm cluster. +This document describes how to deploy Determined on an HPC cluster managed by the Slurm or PBS +workload managers. The Determined master and launcher installation packages are configured for installation on a single -login or administrator Slurm cluster node. +login or administrator Slurm/PBS cluster node. *************************** Install Determined Master @@ -37,8 +38,8 @@ fulfilled and configured, install and configure the Determined master: sudo apt install ./hpe-hpc-launcher-.deb - The installation configures and enables the ``systemd`` ``launcher`` service, which provides - Slurm management capabilities. + The installation configures and enables the ``systemd`` ``launcher`` service, which provides HPC + management capabilities. If launcher dependencies are not satisfied, warning messages are displayed. Install or update missing dependencies or adjust the ``path`` and ``ld_libary_path`` in the next step to locate the @@ -46,13 +47,14 @@ fulfilled and configured, install and configure the Determined master: .. _using_slurm: -************************************************* - Configure and Verify Determined Master on Slurm -************************************************* +******************************************************* + Configure and Verify Determined Master on HPC Cluster +******************************************************* -#. The launcher automatically adds a prototype ``resource_manager`` section for Slurm. Edit the - provided ``resource_manager`` configuration section for your particular deployment. For RPM-based - installations, the configuration file is typically the ``/etc/determined/master.yaml`` file. +#. The launcher automatically adds a prototype ``resource_manager`` section for Slurm/PBS if not + already present upon startup of the launcher service. Edit the provided ``resource_manager`` + configuration section for your particular deployment. For RPM-based installations, the + configuration file is typically the ``/etc/determined/master.yaml`` file. In this example, with Determined and the launcher colocated on a node named ``login``, the section might resemble: @@ -72,6 +74,7 @@ fulfilled and configured, install and configure the Determined master: auth_file: /root/.launcher.token job_storage_root: path: + ld_library_path: tres_supported: true slot_type: cuda @@ -81,6 +84,12 @@ fulfilled and configured, install and configure the Determined master: +----------------------------+----------------------------------------------------------------+ | Option | Experiment Type | +============================+================================================================+ + | ``type`` | The cluster workload manager (``slurm`` or ``pbs``). | + +----------------------------+----------------------------------------------------------------+ + | ``master_host`` | The host name of the Determined master. This is the name the | + | | compute nodes will utilize to communicate with the the | + | | Determined master. | + +----------------------------+----------------------------------------------------------------+ | ``port`` | Communication port used by the launcher. Update this value if | | | there are conflicts with other services on your cluster. | +----------------------------+----------------------------------------------------------------+ @@ -103,9 +112,13 @@ fulfilled and configured, install and configure the Determined master: | ``path`` | If any of the launcher dependencies are not on the default | | | path, you can override the default by updating this value. | +----------------------------+----------------------------------------------------------------+ + | ``gres_supported`` | Indicates that Slurm/PBS is able to identify GPUs. The default | + | | is ``true``. See :ref:`slurm-config-requirements` or | + | | :ref:`pbs-config-requirements` for details. | + +----------------------------+----------------------------------------------------------------+ - See the :ref:`slurm section ` of the cluster configuration reference - for the full list of configuration options. + See the :ref:`slurm/pbs section ` of the cluster configuration + reference for the full list of configuration options. After changing values in the ``resource_manager`` section of the ``/etc/determined/master.yaml`` file, restart the launcher service: @@ -120,7 +133,7 @@ fulfilled and configured, install and configure the Determined master: ``/etc/determined/master.yaml`` file, and restart the launcher. If the installer reported incorrect dependencies, verify that they have been resolved by changes - to the ``path`` in the previous step: + to the ``path`` and ``ld_library_path`` in the previous step: .. code:: bash @@ -137,8 +150,8 @@ fulfilled and configured, install and configure the Determined master: ``/var/log/messages`` or ``journalctl --since=10m -u determined-master``, make the needed changes to the ``/etc/determined/master.yaml`` file, and restart the determined-master. -#. If the compute nodes of your cluster do not have internet connectivity to download Docker images, - see :ref:`slurm-image-config`. +#. If using Singularity and the compute nodes of your cluster do not have internet connectivity to + download Docker images, see :ref:`slurm-image-config`. #. Verify the configuration by sanity-checking your Determined Slurm configuration: @@ -154,57 +167,3 @@ fulfilled and configured, install and configure the Determined master: communication, access to the shared filesystem, GPU scheduling, and highspeed interconnect configuration. For more complete validation, ensure that the ``slots_per_trial`` is at least twice the number of GPUs available on a single node. - -***************** - Configure Slurm -***************** - -Determined should function with your existing Slurm configuration. The following steps are -recommended to optimize how Determined interacts with Slurm: - -- Enable Slurm for GPU Scheduling. - - Configure Slurm with `SelectType=select/cons_tres `__. - This enables Slurm to track GPU allocation instead of tracking only CPUs. If this is not - available, you must change the :ref:`slurm section ` - ``tres_supported`` option to ``false``. - -- Configure GPU Generic Resources (GRES). - - Determined works best when allocating GPUs. Information about what GPUs are available is - available using GRES. You can use the `AutoDetect - `__ feature to configure GPU GRES automatically. - Otherwise, you should manually configure `GRES GPUs - `__ such that Slurm can schedule nodes with - the GPUs you want. - - For the automatic selection of nodes with GPUs, Slurm must be configured for ``GresTypes=gpu`` - and nodes with GPUs must have properly configured GRES indicating the presence of any GPUs. If - Slurm GRES cannot be properly configured, specify the :ref:`slurm section - ` ``gres_supported`` option to ``false``, and it is the user's - responsibility to ensure that GPUs will be available on nodes selected for the job using other - configurations such as targeting a specific resource pool with only GPU nodes, or specifying a - Slurm constraint in the experiment configuration. - -- Ensure homogeneous Slurm partitions. - - Determined maps Slurm partitions to Determined resource pools. It is recommended that the nodes - within a partition are homogeneous for Determined to effectively schedule GPU jobs. - - - A Slurm partition with GPUs is identified as a CUDA/ROCM resource pool. The type is inherited - from the ``resource_manager.slot_type`` configuration. It can be also be specified-per - partition using ``resource_manager.partition_overrides`` - - - A Slurm partition with no GPUs is identified as an AUX resource pool. - - - The Determined default resource pool is set to the Slurm default partition. - -- Tune the Slurm configuration for Determined job preemption. - - Slurm preempts jobs using signals. When a Determined job receives SIGTERM, it begins a checkpoint - and graceful shutdown. To prevent unnecessary loss of work, it is recommended to set ``GraceTime - (secs)`` high enough to permit the job to complete an entire Determined ``scheduling_unit``. - - To enable GPU job preemption, use ``PreemptMode=REQUEUE`` or ``PreemptMode=REQUEUE``, because - ``PreemptMode=SUSPEND`` does not release GPUs so does not allow a higher-priority job to access - the allocated GPU resources. diff --git a/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/overview.rst b/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/overview.rst index 898b857028a..641ac2e65cc 100644 --- a/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/overview.rst +++ b/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/overview.rst @@ -1,31 +1,34 @@ -################# - Deploy on Slurm -################# +##################### + Deploy on Slurm/PBS +##################### +----------------------+ | Supported Versions | +======================+ -| Slurm >= 19.05 | +| Slurm >= 19.05 or | +| PBS >= 2021.1.2 | +----------------------+ | Singularity >= 3.7 | | or PodMan >= 3.3.1 | +----------------------+ | Launcher | | (`hpe-hpc-launcher`) | -| >= 3.1.0 | +| >= 3.1.2 | +----------------------+ | Java >= 1.8 | +----------------------+ .. note:: - Slurm deployment applies to the Enterprise Edition. + Slurm/PBS deployment applies to the Enterprise Edition. -Determined Slurm integration delegates all job scheduling and prioritization to the Slurm workload -manager. This integration enables existing Slurm workloads and Determined workloads to coexist and -Determined workloads to access all of the advanced capabilities of the Slurm workload manager. +This document describes how Determined can be configured to utilize HPC cluster scheduling systems +via the Determined HPC launcher. In this type of configuration, Determined delegates all job +scheduling and prioritization to the HPC workload manager (either Slurm or PBS). This integration +enables existing HPC workloads and Determined workloads to coexist and Determined workloads to +access all of the advanced capabilities of the HPC workload manager. -To install Determined on a Slurm cluster, ensure that the +To install Determined on the HPC cluster, ensure that the :doc:`/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/slurm-requirements` are met, then follow the steps in the :doc:`/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/install-on-slurm` document. @@ -36,7 +39,10 @@ follow the steps in the - :ref:`Determined Installation Requirements ` - `Slurm `__ +- `OpenPBS® `__ +- `PBS Professional® `__ - `Singularity `__ +- `Apptainer `__ - `PodMan `__ .. toctree:: diff --git a/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/slurm-requirements.rst b/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/slurm-requirements.rst index 46c5e1a9a96..b1a5452b861 100644 --- a/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/slurm-requirements.rst +++ b/docs/cluster-setup-guide/deploy-cluster/sysadmin-deploy-on-slurm/slurm-requirements.rst @@ -8,18 +8,18 @@ Basic Requirements ******************** -Deploying Determined with Slurm has the following requirements. +Deploying Determined with Slurm/PBS has the following requirements. - The login node, admin node, and compute nodes must be configured with Ubuntu 20.04 or later, CentOS 7 or later, or SLES 15 or later. -- Slurm 19.05 or greater. +- Slurm 19.05 or greater or PBS 2021.1.2 or greater. - Singularity 3.7 or greater or PodMan 3.3.1 or greater. - A cluster-wide shared filesystem. -- To run jobs with GPUs, the Nvidia drivers must be installed on each Determined agent. Determined +- To run jobs with GPUs, the Nvidia drivers must be installed on each compute node. Determined requires a version greater than or equal to 450.80 of the Nvidia drivers. The Nvidia drivers can be installed as part of a CUDA installation but the rest of the CUDA toolkit is not required. @@ -33,5 +33,128 @@ The launcher has the following additional requirements on the installation node: - Support for an RPM or Debian-based package installer - Java 1.8 or greater -- Access to the Slurm command line interface for the cluster +- Sudo is configured to process configuration files present in the ``/etc/sudoers.d`` directory +- Access to the Slurm or PBS command line interface for the cluster - Access to a cluster-wide file system with a consistent path name across the cluster + +.. _slurm-config-requirements: + +******************** + Slurm Requirements +******************** + +Determined should function with your existing Slurm configuration. The following steps are +recommended to optimize how Determined interacts with Slurm: + +- Enable Slurm for GPU Scheduling. + + Configure Slurm with `SelectType=select/cons_tres `__. + This enables Slurm to track GPU allocation instead of tracking only CPUs. When enabled, + Determined submits batch jobs by specifying ``--gpus={slots_per_trial}``. If this is not + available, you must change the :ref:`slurm section ` + ``tres_supported`` option to ``false``. + +- Configure GPU Generic Resources (GRES). + + Determined works best when allocating GPUs. Information about what GPUs are available is + available using GRES. You can use the `AutoDetect + `__ feature to configure GPU GRES automatically. + Otherwise, you should manually configure `GRES GPUs + `__ such that Slurm can schedule nodes with + the GPUs you want. + + For the automatic selection of nodes with GPUs, Slurm must be configured for ``GresTypes=gpu`` + and nodes with GPUs must have properly configured GRES indicating the presence of any GPUs. When + enabled, Determined can ensure GPUs are available by specifying ``--gres=gpus:1``. If Slurm GRES + cannot be properly configured, specify the :ref:`slurm section ` + ``gres_supported`` option to ``false``, and it is the user's responsibility to ensure that GPUs + will be available on nodes selected for the job using other configurations such as targeting a + specific resource pool with only GPU nodes, or specifying a Slurm constraint in the experiment + configuration. + +- Ensure homogeneous Slurm partitions. + + Determined maps Slurm partitions to Determined resource pools. It is recommended that the nodes + within a partition are homogeneous for Determined to effectively schedule GPU jobs. + + - A Slurm partition with GPUs is identified as a CUDA/ROCM resource pool. The type is inherited + from the ``resource_manager.slot_type`` configuration. It can be also be specified-per + partition using ``resource_manager.partition_overrides`` + + - A Slurm partition with no GPUs is identified as an AUX resource pool. + + - The Determined default resource pool is set to the Slurm default partition. + +- Tune the Slurm configuration for Determined job preemption. + + Slurm preempts jobs using signals. When a Determined job receives SIGTERM, it begins a checkpoint + and graceful shutdown. To prevent unnecessary loss of work, it is recommended to set ``GraceTime + (secs)`` high enough to permit the job to complete an entire Determined ``scheduling_unit``. + + To enable GPU job preemption, use ``PreemptMode=REQUEUE`` or ``PreemptMode=REQUEUE``, because + ``PreemptMode=SUSPEND`` does not release GPUs so does not allow a higher-priority job to access + the allocated GPU resources. + +.. _pbs-config-requirements: + +****************** + PBS Requirements +****************** + +Determined should function with your existing PBS configuration. The following steps are recommended +to optimize how Determined interacts with PBS: + +- Configure PBS to manage GPU resources. + + Determined works best when allocating GPUs. By default, Determined selects compute nodes with + GPUs using the option ``-select={slots_per_trial}:ngpus=1``. If PBS cannot be configured to + identify GPUs in this manner, specify the :ref:`pbs section ` + ``gres_supported`` option to ``false`` when configuring Determined, and it will then be the + user's responsibility to ensure that GPUs will be available on nodes selected for the job using + other configurations such as targeting a specific resource pool with only GPU nodes, or + specifying a PBS constraint in the experiment configuration. + +- Ensure homogeneous PBS queues. + + Determined maps PBS queues to Determined resource pools. It is recommended that the nodes within + a queue are homogeneous for Determined to effectively schedule GPU jobs. + + - A PBS queue with GPUs is identified as a CUDA/ROCM resource pool. The type is inherited from + the ``resource_manager.slot_type`` configuration. It can be also be specified-per partition + using ``resource_manager.partition_overrides``. + + - A PBS queue with no GPUs is identified as an AUX resource pool. + + - The Determined default resource pool is set to the PBS default queue. + +- Tune the PBS configuration for Determined job preemption. + + PBS supports a wide variety of criteria to trigger job preemption, and you may use any per your + system and job requirements. Once a job is identified for preemption, PBS supports four different + options for job preemption which are specified via the preemption_order scheduling parameter. The + preemption order value is ``'SCR'``. The preemption methods are specified by the following + letters: + + ``S`` - Suspend the job. + This is not applicable for GPU jobs, because suspension does not release GPU resources. + + ``C`` - Checkpoint the job. + This requires a custom checkpoint script is added to PBS. + + ``R`` - Requeue the job. + Determined does not support the re-queueing of a task. Determined jobs specify the ``-r n`` + option to PBS to prevent this case. + + ``D`` - Delete the job. + Determined jobs support this option without configuration. + + Given those options, the simplest path to enabling Determined job preemption is by including D + in the ``preemption_order``. You may include ``R`` in the ``preemption_order``, but it is + disabled for Determined jobs. You may include ``C`` to the ``preemption_order`` if you + additionally configure a checkpoint script. Refer to the PBS documentation for details. If you + choose to implement a checkpoint script, you may initiate a Determined checkpoint by sending a + ``SIGTERM`` signal to the Determined job. When a Determined job receives a ``SIGTERM``, it + begins a checkpoint and graceful shutdown. To prevent unnecessary loss of work, it is + recommended that you then wait at least one Determined ``scheduling_unit`` for the job to + complete after sending the ``SIGTERM``. If after that period of time the job has not yet + terminated, then send a ``SIGKILL`` to forcibly release all resources. diff --git a/docs/reference/reference-deploy/config/master-config-reference.rst b/docs/reference/reference-deploy/config/master-config-reference.rst index 1b1eeade99f..d699050fcb7 100644 --- a/docs/reference/reference-deploy/config/master-config-reference.rst +++ b/docs/reference/reference-deploy/config/master-config-reference.rst @@ -214,7 +214,7 @@ The master supports the following configuration settings: .. _cluster-configuration-slurm: - - ``type: slurm``: The ``slurm`` resource manager launches tasks on a Slurm cluster. For more + - ``type: slurm`` or ``pbs``: The HPC launcher submits tasks to a Slurm/PBS cluster. For more information, see :ref:`using_slurm`. - ``master_host``: The hostname for the Determined master by which tasks will communicate @@ -223,7 +223,7 @@ The master supports the following configuration settings: - ``master_port``: The port for the Determined master. - ``host``: The hostname for the Launcher, which Determined communicates with to launch and - monitor Slurm jobs. + monitor jobs. - ``port``: The port for the Launcher. @@ -241,13 +241,13 @@ The master supports the following configuration settings: needed if the certificate is not signed by a well-known CA; cannot be specified if ``skip_verify`` is enabled. - - ``container_run_type``: The type of the container runtime to be used when launching on - Slurm. The value may be ``singularity`` or ``podman``. The default value is - ``singularity``. + - ``container_run_type``: The type of the container runtime to be used when launching tasks. + The value may be ``singularity`` or ``podman``. The default value is ``singularity``. - ``auth_file``: The location of a file which contains an authorization token to communicate with the launcher. It is automatically updated by the launcher as needed when the launcher - is started. + is started. The specified path must be writable by the launcher, and readable by the + Determined master. - ``slot_type``: The default slot type assumed when users request resources from Determined in terms of ``slots``. Defaults to ``cuda``. @@ -285,37 +285,44 @@ The master supports the following configuration settings: - ``job_storage_root``: The shared directory where job-related files will be stored. It is where the needed Determined executables are copied to when the experiment is run, as well - as where the Slurm ``sbatch`` script and log files are created. This directory must be - visible to the launcher and from the compute nodes. + as where the Slurm/PBS scripts and log files are created. This directory must be writable + by the launcher and accessible to the compute nodes to enable the logs to be written from + the submitted batch jobs. - - ``path``: The ``PATH`` for the launcher service so that it is able to find the Slurm, + - ``path``: The ``PATH`` for the launcher service so that it is able to find the Slurm, PBS, Singularity, Nvidia binaries, etc., in case they are not in a standard location on the compute node. For example, ``PATH=/opt/singularity/3.8.5/bin:${PATH}``. - ``ld_library_path``: The ``LD_LIBRARY_PATH`` for the launcher service so that it is able to - find the Slurm, Singularity, Nvidia libraries, etc., in case they are not in a standard - location on the compute node. For example, + find the Slurm, PBS, Singularity, Nvidia libraries, etc., in case they are not in a + standard location on the compute node. For example, ``LD_LIBRARY_PATH=/cm/shared/apps/slurm/21.08.6/lib:/cm/shared/apps/slurm/21.08.6/lib/slurm:${LD_LIBRARY_PATH}``. - ``tres_supported``: Indicates if ``SelectType=select/cons_tres`` is set in the Slurm configuration. Affects how Determined requests GPUs from Slurm. The default is true. - - ``gres_supported``: Indicates if ``GresTypes=gpu`` is set in the Slurm configuration, and - nodes with GPUs have properly configured GRES indicating the presence of any GPUs. The - default is true. When false, Determined will request slots_per_trial nodes and utilize only - GPU 0 on each node. It is the user's responsibility to ensure that GPUs will be available - on nodes selected for the job using other configurations such as targeting a specific - resource pool with only GPU nodes or specifying a Slurm constraint in the experiment - configuration. + - ``gres_supported``: Indicates if GPU resources are properly configured in the HPC workload + manager. - - ``partition_overrides``: A map of Slurm partition names to partition-level overrides. For + For PBS, the ``ngpus`` option can be used to identify the number of GPUs available on a + node. + + For Slurm, ``GresTypes=gpu`` is set in the Slurm configuration, and nodes with GPUs have + properly configured GRES indicating the presence of any GPUs. The default is true. When + false, Determined will request ``slots_per_trial`` nodes and utilize only GPU 0 on each + node. It is the user's responsibility to ensure that GPUs will be available on nodes + selected for the job using other configurations such as targeting a specific resource pool + with only GPU nodes or specifying a Slurm constraint in the experiment configurSation. + + - ``partition_overrides``: A map of partition/queue names to partition-level overrides. For each configuration, if it is set for a given partition, it overrides the setting at the root level. - ``rendezvous_network_interface`` - ``proxy_network_interface`` - ``slot_type`` - - ``task_container_defaults`` + - ``task_container_defaults`` (See :ref:`top-level setting + `) - ``resource_pools``: A list of resource pools. A resource pool is a collection of identical computational resources. Users can specify which resource pool a job should be assigned to when diff --git a/docs/release-notes/FOUNDENG-184-PBS.rst b/docs/release-notes/FOUNDENG-184-PBS.rst new file mode 100644 index 00000000000..a5254170c50 --- /dev/null +++ b/docs/release-notes/FOUNDENG-184-PBS.rst @@ -0,0 +1,11 @@ +:orphan: + +**New Features** + +- Cluster: The enterprise edition of `HPE Machine Learning Development Environment + `_ + can now be deployed on a PBS cluster. When using PBS scheduler, HPE Machine Learning Development + Environment delegates all job scheduling and prioritization to the PBS workload manager. This + integration enables existing PBS workloads and HPE Machine Learning Development Environment + workloads to coexist and access all of the advanced capabilities of the PBS workload manager. You + can use either Singularity or Podman for the container runtime. From 533237767b43143f3e50aa9a8a53389caa07cd37 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 21 Oct 2022 01:54:52 +0000 Subject: [PATCH 2/2] build(deps): bump go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho Bumps [go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho](https://github.com/labstack/echo) from 0.29.0 to 0.36.4. - [Release notes](https://github.com/labstack/echo/releases) - [Changelog](https://github.com/labstack/echo/blob/master/CHANGELOG.md) - [Commits](https://github.com/labstack/echo/commits) --- updated-dependencies: - dependency-name: go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- master/go.mod | 19 +++++++++---------- master/go.sum | 36 +++++++++++++++++++----------------- 2 files changed, 28 insertions(+), 27 deletions(-) diff --git a/master/go.mod b/master/go.mod index 383e6e8d0ba..19f742c2e11 100644 --- a/master/go.mod +++ b/master/go.mod @@ -9,7 +9,6 @@ require ( github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869 // indirect github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f github.com/davecgh/go-spew v1.1.1 - github.com/determined-ai/determined/proto v0.0.0-00010101000000-000000000000 github.com/docker/docker v20.10.12+incompatible github.com/docker/go-connections v0.4.0 github.com/docker/go-units v0.4.0 @@ -21,7 +20,7 @@ require ( github.com/go-pg/pg/v10 v10.10.6 github.com/golang-jwt/jwt v3.2.2+incompatible github.com/golang/protobuf v1.5.2 - github.com/google/go-cmp v0.5.7 + github.com/google/go-cmp v0.5.9 github.com/google/uuid v1.3.0 github.com/gorilla/websocket v1.4.2 github.com/grpc-ecosystem/go-grpc-middleware v1.2.2 @@ -34,8 +33,8 @@ require ( github.com/jackc/pgx/v4 v4.12.0 github.com/jmoiron/sqlx v1.2.1-0.20190826204134-d7d95172beb5 github.com/labstack/echo-contrib v0.11.0 - github.com/labstack/echo/v4 v4.6.3 - github.com/labstack/gommon v0.3.1 + github.com/labstack/echo/v4 v4.9.1 + github.com/labstack/gommon v0.4.0 github.com/o1egl/paseto v1.0.0 github.com/opencontainers/go-digest v1.0.0 // indirect github.com/opentracing/opentracing-go v1.2.0 @@ -48,7 +47,7 @@ require ( github.com/spf13/cobra v1.2.1 github.com/spf13/pflag v1.0.5 github.com/spf13/viper v1.9.0 - github.com/stretchr/testify v1.7.1 + github.com/stretchr/testify v1.8.0 github.com/uber/jaeger-client-go v2.25.0+incompatible github.com/xtgo/uuid v0.0.0-20140804021211-a0b114877d4c // indirect golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 @@ -66,8 +65,8 @@ require ( ) require ( - go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho v0.29.0 - go.opentelemetry.io/otel v1.6.1 + go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho v0.36.4 + go.opentelemetry.io/otel v1.11.1 go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.6.1 go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.6.1 go.opentelemetry.io/otel/sdk v1.6.1 @@ -132,7 +131,7 @@ require ( github.com/spf13/afero v1.6.0 // indirect github.com/spf13/cast v1.4.1 // indirect github.com/spf13/jwalterweatherman v1.1.0 // indirect - github.com/stretchr/objx v0.2.0 // indirect + github.com/stretchr/objx v0.4.0 // indirect github.com/subosito/gotenv v1.2.0 // indirect github.com/tmthrgd/go-hex v0.0.0-20190904060850-447a3041c3bc // indirect github.com/uber/jaeger-lib v2.4.0+incompatible // indirect @@ -144,7 +143,7 @@ require ( github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect go.opencensus.io v0.23.0 // indirect go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.6.1 // indirect - go.opentelemetry.io/otel/trace v1.6.1 // indirect + go.opentelemetry.io/otel/trace v1.11.1 // indirect go.opentelemetry.io/proto/otlp v0.12.1 // indirect go.uber.org/atomic v1.9.0 // indirect golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8 // indirect @@ -158,7 +157,7 @@ require ( gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/ini.v1 v1.63.2 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect - gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect gotest.tools/v3 v3.0.3 // indirect k8s.io/klog/v2 v2.30.0 // indirect k8s.io/kube-openapi v0.0.0-20211115234752-e816edb12b65 // indirect diff --git a/master/go.sum b/master/go.sum index f981cc648dc..0d0fee07ffa 100644 --- a/master/go.sum +++ b/master/go.sum @@ -315,8 +315,9 @@ github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.7 h1:81/ik6ipDQS2aGcBfIN5dHDB36BwrStyeAQquSYCV4o= github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE= +github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g= github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= @@ -524,11 +525,11 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/labstack/echo-contrib v0.11.0 h1:/B7meUKBP7AAoSEOrawpSivhFvu7GQG+kDhlzi5v0Wo= github.com/labstack/echo-contrib v0.11.0/go.mod h1:Hk8Iyxe2GrYR/ch0cbI3BK7ZhR2Y60YEqtkoZilqDOc= github.com/labstack/echo/v4 v4.3.0/go.mod h1:PvmtTvhVqKDzDQy4d3bWzPjZLzom4iQbAZy2sgZ/qI8= -github.com/labstack/echo/v4 v4.6.3 h1:VhPuIZYxsbPmo4m9KAkMU/el2442eB7EBFFhNTTT9ac= -github.com/labstack/echo/v4 v4.6.3/go.mod h1:Hk5OiHj0kDqmFq7aHe7eDqI7CUhuCrfpupQtLGGLm7A= +github.com/labstack/echo/v4 v4.9.1 h1:GliPYSpzGKlyOhqIbG8nmHBo3i1saKWFOgh41AN3b+Y= +github.com/labstack/echo/v4 v4.9.1/go.mod h1:Pop5HLc+xoc4qhTZ1ip6C0RtP7Z+4VzRLWZZFKqbbjo= github.com/labstack/gommon v0.3.0/go.mod h1:MULnywXg0yavhxWKc+lOruYdAhDwPK9wf0OL7NoOu+k= -github.com/labstack/gommon v0.3.1 h1:OomWaJXm7xR6L1HmEtGyQf26TEn7V6X88mktX9kee9o= -github.com/labstack/gommon v0.3.1/go.mod h1:uW6kP17uPlLJsD3ijUYn3/M5bAxtlZhMI6m3MFxTMTM= +github.com/labstack/gommon v0.4.0 h1:y7cvthEAEbU0yHOf4axH8ZG2NH8knB9iNSoTO8dyIk8= +github.com/labstack/gommon v0.4.0/go.mod h1:uW6kP17uPlLJsD3ijUYn3/M5bAxtlZhMI6m3MFxTMTM= github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.1.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= @@ -751,16 +752,18 @@ github.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271/go.mod h1:AZpEONHx3 github.com/streadway/handy v0.0.0-20190108123426-d5acb3125c2a/go.mod h1:qNTQ5P5JnDBl6z3cMAg/SywNDC5ABu5ApDIw6lUbRmI= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/objx v0.2.0 h1:Hbg2NidpLE8veEBkEZTL3CvlkUIVzuU9jDplZO54c48= github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= +github.com/stretchr/objx v0.4.0 h1:M2gUjqZET1qApGOWNSnZ49BAIMX4F/1plDv3+l31EJ4= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/stretchr/testify v1.7.1 h1:5TQK59W5E3v0r2duFAb7P95B6hEeOyEnHRa8MjYSMTY= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= @@ -819,14 +822,13 @@ go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.23.0 h1:gqCw0LfLxScz8irSi8exQc7fyQ0fKQU/qnC/X8+V/1M= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= -go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho v0.29.0 h1:BLXo2v0bW3iq8NhgSf/1X6Cu7UcfkNk3yyuxNcZB1wk= -go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho v0.29.0/go.mod h1:+0RWgKCuTYtJaZo9Io/D2PAvkMZsRkmYaNgHhwzrCDM= -go.opentelemetry.io/contrib/propagators/b3 v1.4.0 h1:wDb2ct7xMzossYpx44w81skxkEyeT2IRnBgYKqyEork= -go.opentelemetry.io/contrib/propagators/b3 v1.4.0/go.mod h1:K399DN23drp0RQGXCbSPOt9075HopQigMgUL99oR8hc= +go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho v0.36.4 h1:KbVA3Thz7WIalFULbno4Zv1JbNFx9A2H6cpsRopgyVw= +go.opentelemetry.io/contrib/instrumentation/github.com/labstack/echo/otelecho v0.36.4/go.mod h1:IkQD0Ib5Ii3VrQnfD5dRh+WFQtwz7tnfcN61xaQbYfU= +go.opentelemetry.io/contrib/propagators/b3 v1.11.1 h1:icQ6ttRV+r/2fnU46BIo/g/mPu6Rs5Ug8Rtohe3KqzI= go.opentelemetry.io/otel v0.13.0/go.mod h1:dlSNewoRYikTkotEnxdmuBHgzT+k/idJSfDv/FxEnOY= -go.opentelemetry.io/otel v1.4.0/go.mod h1:jeAqMFKy2uLIxCtKxoFj0FAL5zAPKQagc3+GtBWakzk= -go.opentelemetry.io/otel v1.6.1 h1:6r1YrcTenBvYa1x491d0GGpTVBsNECmrc/K6b+zDeis= go.opentelemetry.io/otel v1.6.1/go.mod h1:blzUabWHkX6LJewxvadmzafgh/wnvBSDBdOuwkAtrWQ= +go.opentelemetry.io/otel v1.11.1 h1:4WLLAmcfkmDk2ukNXJyq3/kiz/3UzCaYq6PskJsaou4= +go.opentelemetry.io/otel v1.11.1/go.mod h1:1nNhXBbWSD0nsL38H6btgnFN2k4i0sNLHNNMZMSbUGE= go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.6.1 h1:T1FtMXHM2YPIUrYxSbTIAYDCvUZVpNdl7hDMDnp09cE= go.opentelemetry.io/otel/exporters/otlp/internal/retry v1.6.1/go.mod h1:NEu79Xo32iVb+0gVNV8PMd7GoWqnyDXRlj04yFjqz40= go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.6.1 h1:EvIC2jmn1+24OABwtw2Lng5yxy5eYJ8nf461UaHXTms= @@ -835,9 +837,9 @@ go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.6.1 h1:G45R6K go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.6.1/go.mod h1:UJJXJj0rltNIemDMwkOJyggsvyMG9QHfJeFH0HS5JjM= go.opentelemetry.io/otel/sdk v1.6.1 h1:ZmcNyMhcuAYIb/Nr6QhBPTMopMTbov/47wHt1gibkoY= go.opentelemetry.io/otel/sdk v1.6.1/go.mod h1:IVYrddmFZ+eJqu2k38qD3WezFR2pymCzm8tdxyh3R4E= -go.opentelemetry.io/otel/trace v1.4.0/go.mod h1:uc3eRsqDfWs9R7b92xbQbU42/eTNz4N+gLP8qJCi4aE= -go.opentelemetry.io/otel/trace v1.6.1 h1:f8c93l5tboBYZna1nWk0W9DYyMzJXDWdZcJZ0Kb400U= go.opentelemetry.io/otel/trace v1.6.1/go.mod h1:RkFRM1m0puWIq10oxImnGEduNBzxiN7TXluRBtE+5j0= +go.opentelemetry.io/otel/trace v1.11.1 h1:ofxdnzsNrGBYXbP7t7zpUK281+go5rF7dvdIZXF8gdQ= +go.opentelemetry.io/otel/trace v1.11.1/go.mod h1:f/Q9G7vzk5u91PhbmKbg1Qn0rzH1LJ4vbPHFGkTPtOk= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.opentelemetry.io/proto/otlp v0.12.1 h1:kfx2sboxOGFvGJcH2C408CiVo2wVHC2av2XHNqj4vEg= go.opentelemetry.io/proto/otlp v0.12.1/go.mod h1:H7XAot3MsfNsj7EXtrA2q5xSNQ10UqI405h3+duxN4U= @@ -978,7 +980,6 @@ golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLd golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20210913180222-943fd674d43e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211209124913-491a49abca63 h1:iocB37TsdFuN6IBRZ+ry36wrkoV51/tl5vOWqkcPGvY= golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= @@ -1384,8 +1385,9 @@ gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b h1:h8qDotaEPuJATrMmW04NCwg7v22aHH28wwpauUhK9Oo= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo= gotest.tools v2.2.0+incompatible/go.mod h1:DsYFclhRJ6vuDpmuTbkuFWG+y2sxOXAzmJt81HFBacw= gotest.tools/v3 v3.0.3 h1:4AuOwCGf4lLR9u3YOe2awrHygurzhO/HeQ6laiA6Sx0=