Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
7fb7db09cf
commit
b529be3951
|
|
@ -1,12 +1,11 @@
|
|||
<script>
|
||||
import { GlButton, GlEmptyState, GlLoadingIcon, GlTableLite } from '@gitlab/ui';
|
||||
import { GlEmptyState, GlLoadingIcon, GlTableLite } from '@gitlab/ui';
|
||||
import { createAlert } from '~/alert';
|
||||
import { __, s__ } from '~/locale';
|
||||
import getCiCatalogResourceComponents from '../../graphql/queries/get_ci_catalog_resource_components.query.graphql';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
GlButton,
|
||||
GlEmptyState,
|
||||
GlLoadingIcon,
|
||||
GlTableLite,
|
||||
|
|
@ -75,8 +74,6 @@ export default {
|
|||
},
|
||||
],
|
||||
i18n: {
|
||||
copyText: __('Copy value'),
|
||||
copyAriaText: __('Copy to clipboard'),
|
||||
emptyStateTitle: s__('CiCatalogComponent|Component details not available'),
|
||||
emptyStateDesc: s__(
|
||||
'CiCatalogComponent|This tab displays auto-collected information about the components in the repository, but no information was found.',
|
||||
|
|
@ -103,24 +100,13 @@ export default {
|
|||
data-testid="component-section"
|
||||
>
|
||||
<h3 class="gl-font-size-h2" data-testid="component-name">{{ component.name }}</h3>
|
||||
<div class="gl-display-flex">
|
||||
<pre
|
||||
class="gl-w-85p gl-py-4 gl-display-flex gl-justify-content-space-between gl-m-0 gl-border-r-none"
|
||||
><span>{{ generateSnippet(component.includePath) }}</span>
|
||||
</pre>
|
||||
<div class="gl--flex-center gl-bg-gray-10 gl-border gl-border-l-none">
|
||||
<gl-button
|
||||
class="gl-p-4! gl-mr-3!"
|
||||
category="tertiary"
|
||||
icon="copy-to-clipboard"
|
||||
size="small"
|
||||
:title="$options.i18n.copyText"
|
||||
:data-clipboard-text="generateSnippet(component.includePath)"
|
||||
data-testid="copy-to-clipboard"
|
||||
:aria-label="$options.i18n.copyAriaText"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<pre
|
||||
data-testid="copy-to-clipboard"
|
||||
class="code highlight js-syntax-highlight language-yaml"
|
||||
lang="yaml"
|
||||
><code>{{
|
||||
generateSnippet(component.includePath)
|
||||
}}</code></pre>
|
||||
<div class="gl-mt-5">
|
||||
<b class="gl-display-block gl-mb-4"> {{ $options.i18n.inputTitle }}</b>
|
||||
<gl-table-lite :items="component.inputs" :fields="$options.fields">
|
||||
|
|
|
|||
|
|
@ -98,7 +98,6 @@ export default {
|
|||
cancelPipelineText: __('Cancel pipeline'),
|
||||
deletePipelineText: __('Delete'),
|
||||
clipboardTooltip: __('Copy commit SHA'),
|
||||
createdText: s__('Pipelines|created'),
|
||||
finishedText: s__('Pipelines|finished'),
|
||||
},
|
||||
errorTexts: {
|
||||
|
|
@ -471,14 +470,21 @@ export default {
|
|||
data-testid="commit-copy-sha"
|
||||
size="small"
|
||||
/>
|
||||
<span v-if="inProgress" data-testid="pipeline-created-time-ago">
|
||||
{{ $options.i18n.createdText }}
|
||||
<time-ago-tooltip :time="pipeline.createdAt" />
|
||||
</span>
|
||||
<span v-if="isFinished" data-testid="pipeline-finished-time-ago">
|
||||
{{ $options.i18n.finishedText }}
|
||||
<time-ago-tooltip :time="pipeline.finishedAt" />
|
||||
</span>
|
||||
<time-ago-tooltip
|
||||
v-if="inProgress"
|
||||
:time="pipeline.createdAt"
|
||||
data-testid="pipeline-created-time-ago"
|
||||
/>
|
||||
<template v-if="isFinished">
|
||||
<time-ago-tooltip
|
||||
:time="pipeline.createdAt"
|
||||
data-testid="pipeline-finished-created-time-ago"
|
||||
/>, {{ $options.i18n.finishedText }}
|
||||
<time-ago-tooltip
|
||||
:time="pipeline.finishedAt"
|
||||
data-testid="pipeline-finished-time-ago"
|
||||
/>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
<div v-safe-html="refText" class="gl-mb-3" data-testid="pipeline-ref-text"></div>
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import initDiverganceGraph from '~/branches/divergence_graph';
|
|||
import initDeleteBranchModal from '~/branches/init_delete_branch_modal';
|
||||
import initDeleteMergedBranches from '~/branches/init_delete_merged_branches';
|
||||
import initBranchMoreActions from '~/branches/init_branch_more_actions';
|
||||
import initSourceCodeDropdowns from '~/vue_shared/components/download_dropdown/init_download_dropdowns';
|
||||
|
||||
const { divergingCountsEndpoint, defaultBranch } = document.querySelector(
|
||||
'.js-branch-list',
|
||||
|
|
@ -13,6 +14,7 @@ initDiverganceGraph(divergingCountsEndpoint, defaultBranch);
|
|||
BranchSortDropdown();
|
||||
initDeprecatedRemoveRowBehavior();
|
||||
initDeleteMergedBranches();
|
||||
initSourceCodeDropdowns();
|
||||
|
||||
document.querySelectorAll('.js-branch-more-actions').forEach((elem) => initBranchMoreActions(elem));
|
||||
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import { initUploadFileTrigger } from '~/projects/upload_file';
|
|||
import initReadMore from '~/read_more';
|
||||
import initAmbiguousRefModal from '~/ref/init_ambiguous_ref_modal';
|
||||
import CodeDropdown from '~/vue_shared/components/code_dropdown/code_dropdown.vue';
|
||||
import initSourceCodeDropdowns from '~/vue_shared/components/download_dropdown/init_download_dropdowns';
|
||||
import { initHomePanel } from '../home_panel';
|
||||
|
||||
// Project show page loads different overview content based on user preferences
|
||||
|
|
@ -80,3 +81,4 @@ const initCodeDropdown = () => {
|
|||
};
|
||||
|
||||
initCodeDropdown();
|
||||
initSourceCodeDropdowns();
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import Vue from 'vue';
|
||||
import initSourceCodeDropdowns from '~/vue_shared/components/download_dropdown/init_download_dropdowns';
|
||||
import SortDropdown from './components/sort_dropdown.vue';
|
||||
|
||||
const mountDropdownApp = (el) => {
|
||||
|
|
@ -18,6 +19,8 @@ const mountDropdownApp = (el) => {
|
|||
});
|
||||
};
|
||||
|
||||
initSourceCodeDropdowns();
|
||||
|
||||
export default () => {
|
||||
const el = document.getElementById('js-tags-sort-dropdown');
|
||||
return el ? mountDropdownApp(el) : null;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,110 @@
|
|||
<script>
|
||||
import { GlDisclosureDropdown, GlDisclosureDropdownGroup, GlTooltipDirective } from '@gitlab/ui';
|
||||
import { __ } from '~/locale';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
GlDisclosureDropdown,
|
||||
GlDisclosureDropdownGroup,
|
||||
},
|
||||
directives: {
|
||||
GlTooltip: GlTooltipDirective,
|
||||
},
|
||||
props: {
|
||||
downloadLinks: {
|
||||
type: Array,
|
||||
required: true,
|
||||
},
|
||||
downloadArtifacts: {
|
||||
type: Array,
|
||||
required: true,
|
||||
},
|
||||
cssClass: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
hasDownloadLinks() {
|
||||
return this.downloadLinks.length;
|
||||
},
|
||||
hasDownloadArtifacts() {
|
||||
return this.downloadArtifacts.length;
|
||||
},
|
||||
showDownloadArtifactsBorder() {
|
||||
return this.hasDownloadLinks > 0;
|
||||
},
|
||||
sourceCodeGroup() {
|
||||
const items = this.downloadLinks.map((link) => ({
|
||||
text: link.text,
|
||||
href: link.path,
|
||||
extraAttrs: {
|
||||
rel: 'nofollow',
|
||||
download: '',
|
||||
},
|
||||
}));
|
||||
|
||||
return {
|
||||
name: this.$options.i18n.downloadSourceCode,
|
||||
items,
|
||||
};
|
||||
},
|
||||
artifactsGroup() {
|
||||
const items = this.downloadArtifacts.map((link) => ({
|
||||
text: link.text,
|
||||
href: link.path,
|
||||
extraAttrs: {
|
||||
rel: 'nofollow',
|
||||
download: '',
|
||||
},
|
||||
}));
|
||||
|
||||
return {
|
||||
name: this.$options.i18n.downloadArtifacts,
|
||||
items,
|
||||
};
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
closeDropdown() {
|
||||
this.$refs.dropdown.close();
|
||||
},
|
||||
},
|
||||
i18n: {
|
||||
defaultLabel: __('Download'),
|
||||
downloadSourceCode: __('Download source code'),
|
||||
downloadArtifacts: __('Download artifacts'),
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<template>
|
||||
<gl-disclosure-dropdown
|
||||
ref="dropdown"
|
||||
v-gl-tooltip.hover
|
||||
:toggle-text="$options.i18n.defaultLabel"
|
||||
:title="$options.i18n.defaultLabel"
|
||||
category="secondary"
|
||||
placement="right"
|
||||
icon="download"
|
||||
text-sr-only
|
||||
fluid-width
|
||||
:class="cssClass"
|
||||
data-testid="download-source-code-button"
|
||||
:auto-close="false"
|
||||
>
|
||||
<gl-disclosure-dropdown-group
|
||||
v-if="hasDownloadLinks"
|
||||
:group="sourceCodeGroup"
|
||||
data-testid="source-code-group"
|
||||
@action="closeDropdown"
|
||||
/>
|
||||
<gl-disclosure-dropdown-group
|
||||
v-if="hasDownloadArtifacts"
|
||||
:group="artifactsGroup"
|
||||
:bordered="showDownloadArtifactsBorder"
|
||||
data-testid="artifacts-group"
|
||||
@action="closeDropdown"
|
||||
/>
|
||||
</gl-disclosure-dropdown>
|
||||
</template>
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
import Vue from 'vue';
|
||||
import SourceCodeDownloadDropdown from '~/vue_shared/components/download_dropdown/download_dropdown.vue';
|
||||
|
||||
export default function initSourceCodeDropdowns() {
|
||||
const dropdowns = document.querySelectorAll('.js-source-code-dropdown');
|
||||
|
||||
return dropdowns.forEach((el, index) => {
|
||||
const { downloadLinks, downloadArtifacts, cssClass } = el.dataset;
|
||||
|
||||
return new Vue({
|
||||
el,
|
||||
name: `SourceCodeDropdown${index + 1}`,
|
||||
provide: {
|
||||
downloadLinks,
|
||||
downloadArtifacts,
|
||||
cssClass,
|
||||
},
|
||||
render(createElement) {
|
||||
return createElement(SourceCodeDownloadDropdown, {
|
||||
props: {
|
||||
downloadLinks: JSON.parse(downloadLinks) || [],
|
||||
downloadArtifacts: JSON.parse(downloadArtifacts) || [],
|
||||
cssClass,
|
||||
},
|
||||
});
|
||||
},
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
@ -196,6 +196,15 @@ module TreeHelper
|
|||
}
|
||||
end
|
||||
|
||||
def download_links(project, ref, archive_prefix)
|
||||
Gitlab::Workhorse::ARCHIVE_FORMATS.map do |fmt|
|
||||
{
|
||||
text: fmt,
|
||||
path: external_storage_url_or_path(project_archive_path(project, id: tree_join(ref, archive_prefix), format: fmt))
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
def directory_download_links(project, ref, archive_prefix)
|
||||
Gitlab::Workhorse::ARCHIVE_FORMATS.map do |fmt|
|
||||
{
|
||||
|
|
@ -206,4 +215,13 @@ module TreeHelper
|
|||
end
|
||||
end
|
||||
|
||||
def previous_artifacts(project, ref, builds_with_artifacts)
|
||||
builds_with_artifacts.map do |job|
|
||||
{
|
||||
text: job.name,
|
||||
path: latest_succeeded_project_artifacts_path(project, "#{ref}/download", job: job.name)
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
TreeHelper.prepend_mod_with('TreeHelper')
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ class UserDetail < MainClusterwide::ApplicationRecord
|
|||
extend ::Gitlab::Utils::Override
|
||||
|
||||
ignore_column :requires_credit_card_verification, remove_with: '16.1', remove_after: '2023-06-22'
|
||||
ignore_column :onboarding_step_url, remove_with: '17.1', remove_after: '2024-05-16'
|
||||
|
||||
REGISTRATION_OBJECTIVE_PAIRS = { basics: 0, move_repository: 1, code_storage: 2, exploring: 3, ci: 4, other: 5, joining_team: 6 }.freeze
|
||||
|
||||
|
|
|
|||
|
|
@ -1,12 +1,14 @@
|
|||
- project = local_assigns.fetch(:project)
|
||||
- ref = local_assigns.fetch(:ref)
|
||||
- css_class = local_assigns.fetch(:css_class, '')
|
||||
- archive_prefix = ref ? "#{project.path}-#{ref.tr('/', '-')}" : ''
|
||||
- pipeline = local_assigns.fetch(:pipeline, nil)
|
||||
- download_links = download_links(project, ref, archive_prefix).to_json
|
||||
- download_artifacts = pipeline && previous_artifacts(project, ref, pipeline.latest_builds_with_artifacts).to_json || []
|
||||
|
||||
- if !project.empty_repo? && can?(current_user, :download_code, project)
|
||||
.project-action-button.dropdown.gl-dropdown.inline{ class: css_class }>
|
||||
= render Pajamas::ButtonComponent.new(button_options: { class: 'dropdown-toggle gl-dropdown-toggle dropdown-icon-only has-tooltip', title: s_('DownloadSource|Download'), 'data-toggle' => 'dropdown', 'aria-label' => s_('DownloadSource|Download'), 'data-display' => 'static', data: { testid: 'download-source-code-button' } }) do
|
||||
= sprite_icon('download', css_class: 'gl-icon dropdown-icon')
|
||||
%span.sr-only= _('Select Archive Format')
|
||||
= sprite_icon('chevron-down', css_class: 'gl-icon dropdown-chevron')
|
||||
%ul.dropdown-menu.dropdown-menu-right{ role: 'menu' }
|
||||
= render 'projects/buttons/download_menu_items', project: project, ref: ref
|
||||
.js-source-code-dropdown{ data: {
|
||||
download_links: download_links,
|
||||
download_artifacts: download_artifacts,
|
||||
css_class: css_class,
|
||||
} }
|
||||
|
|
|
|||
|
|
@ -1,5 +0,0 @@
|
|||
- Gitlab::Workhorse::ARCHIVE_FORMATS.each_with_index do |fmt, index|
|
||||
- archive_path = project_archive_path(project, id: tree_join(ref, archive_prefix), path: path, format: fmt)
|
||||
|
||||
%a.dropdown-item.open-with-link{ href: external_storage_url_or_path(archive_path), rel: 'nofollow', download: '' }
|
||||
.gl-dropdown-item-text-wrapper= fmt
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
- project = local_assigns.fetch(:project)
|
||||
- ref = local_assigns.fetch(:ref)
|
||||
- archive_prefix = "#{project.path}-#{ref.tr('/', '-')}"
|
||||
|
||||
%li.gl-dropdown-item{ class: 'gl-pt-3!', role: 'menuitem' }
|
||||
%label.label-bold{ class: 'gl-px-4!' }= _('Download source code')
|
||||
= render 'projects/buttons/download_links', project: project, ref: ref, archive_prefix: archive_prefix, path: nil
|
||||
|
|
@ -6,4 +6,4 @@ introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/145041
|
|||
milestone: '16.10'
|
||||
queued_migration_version: 20240226174509
|
||||
finalize_after: '2024-03-15'
|
||||
finalized_by: # version of the migration that finalized this BBM
|
||||
finalized_by: 20240318150930
|
||||
|
|
|
|||
|
|
@ -0,0 +1,22 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class FinalizeBackfillOnboardingStatusStepUrl < Gitlab::Database::Migration[2.2]
|
||||
disable_ddl_transaction!
|
||||
|
||||
milestone '16.11'
|
||||
restrict_gitlab_migration gitlab_schema: :gitlab_main
|
||||
|
||||
def up
|
||||
# params match the queueing migration in db/post_migrate/20240226174509_queue_backfill_onboarding_status_step_url.rb
|
||||
ensure_batched_background_migration_is_finished(
|
||||
job_class_name: 'BackfillOnboardingStatusStepUrl',
|
||||
table_name: :users,
|
||||
column_name: :id,
|
||||
job_arguments: []
|
||||
)
|
||||
end
|
||||
|
||||
def down
|
||||
# no-op
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1 @@
|
|||
e90558f6f3e66d2d4d25adc66bce0649037c9092f0c21d3967443a39c092358f
|
||||
|
|
@ -310,3 +310,20 @@ If you get a `404 Page Not Found` response from GitLab Pages:
|
|||
1. Check the current project's pipeline to confirm the job `pages:deploy` is being run.
|
||||
|
||||
Without the `pages:deploy` job, the updates to your GitLab Pages site are never published.
|
||||
|
||||
## 503 error `Client authentication failed due to unknown client, no client authentication included, or unsupported authentication method.`
|
||||
|
||||
If Pages is a registered OAuth application and [access control is enabled](../../user/project/pages/pages_access_control.md), this error indicates that the authentication token stored in `/etc/gitlab/gitlab-secrets.json` has become invalid. To resolve:
|
||||
|
||||
1. Back up your secrets file:
|
||||
|
||||
```shell
|
||||
sudo cp /etc/gitlab/gitlab-secrets.json /etc/gitlab/gitlab-secrets.json.$(date +\%Y\%m\%d)
|
||||
```
|
||||
|
||||
1. Edit `/etc/gitlab/gitlab-secrets.json` and remove the `gitlab_pages` section.
|
||||
1. Reconfigure GitLab and regenerate the OAuth token:
|
||||
|
||||
```shell
|
||||
sudo gitlab-ctl reconfigure
|
||||
```
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ This page is a development guide for application secrets.
|
|||
|`db_key_base` | The base key to encrypt the data for `attr_encrypted` columns |
|
||||
|`openid_connect_signing_key` | The signing key for OpenID Connect |
|
||||
| `encrypted_settings_key_base` | The base key to encrypt settings files with |
|
||||
| `ci_jwt_signing_key` | The base key for encrypting the `CI_JOB_JWT` and `CI_JOB_JWT_V2` predefined CI/CD variables. `CI_JOB_JWT` and `CI_JOB_JWT_V2` were [deprecated in GitLab 15.9](../update/deprecations.md#old-versions-of-json-web-tokens-are-deprecated) and are scheduled to be removed in GitLab 16.5. |
|
||||
| `ci_jwt_signing_key` | The base key for encrypting the `CI_JOB_JWT` and `CI_JOB_JWT_V2` predefined CI/CD variables. `CI_JOB_JWT` and `CI_JOB_JWT_V2` were [deprecated in GitLab 15.9](../update/deprecations.md#old-versions-of-json-web-tokens-are-deprecated) and are scheduled to be removed in GitLab 17.0. |
|
||||
|
||||
## Where the secrets are stored
|
||||
|
||||
|
|
|
|||
|
|
@ -93,3 +93,23 @@ to make the shorter pipeline run, you must follow these guidelines when naming y
|
|||
| Starting with `docs/` | `docs/update-api-issues` |
|
||||
| Starting with `docs-` | `docs-update-api-issues` |
|
||||
| Ending in `-docs` | `123-update-api-issues-docs` |
|
||||
|
||||
## Backport documentation changes to older branches
|
||||
|
||||
Backporting documentation to older branches is something that should be used rarely.
|
||||
The criteria includes legal issues, emergency security fixes, and fixes to content that
|
||||
might prevent users from upgrading or cause data loss.
|
||||
|
||||
There are two types of backports:
|
||||
|
||||
- **Latest stable version:** Maintainers (backend, frontend, docs) can backport
|
||||
changes, usually bug fixes but also important documentation changes, into the
|
||||
latest stable version.
|
||||
- **Older stable branches:** To guarantee the
|
||||
[maintenance policy](../../policy/maintenance.md) is respected, merging to
|
||||
older stable branches is restricted to release managers.
|
||||
|
||||
To backport changes to an older branch
|
||||
[open an issue in the Technical Writing project](https://gitlab.com/gitlab-org/technical-writing/-/issues/new)
|
||||
using the [backport changes template](https://gitlab.com/gitlab-org/technical-writing/-/blob/main/.gitlab/issue_templates/backport_changes.md),
|
||||
and follow the steps.
|
||||
|
|
|
|||
|
|
@ -721,7 +721,7 @@ For example, use footnotes when you must:
|
|||
#### Footnote format
|
||||
|
||||
In the table, use the HTML superscript tag `<sup>` for each footnote.
|
||||
Put the tag at the end after any punctuation mark.
|
||||
Put the tag at the end of the sentence. Leave one space between the sentence and the tag.
|
||||
|
||||
For example:
|
||||
|
||||
|
|
@ -757,7 +757,7 @@ The table and footnotes would render as follows:
|
|||
1. This is the first footnote.
|
||||
1. This is the second footnote.
|
||||
|
||||
##### More than five footnotes
|
||||
##### Five or more footnotes
|
||||
|
||||
If you have five or more footnotes that you cannot include in the table itself,
|
||||
you can use consecutive numbers for the list items.
|
||||
|
|
|
|||
|
|
@ -77,6 +77,20 @@ When you create a user, you choose an access level: **Regular**, **Auditor**, or
|
|||
|
||||
Capitalize these words when you refer to the UI. Otherwise use lowercase.
|
||||
|
||||
## add
|
||||
|
||||
Use **add** when an object already exists. If the object does not exist yet, use [**create](#create) instead.
|
||||
**Add** is the opposite of [remove](#remove).
|
||||
|
||||
For example:
|
||||
|
||||
- Add a user to the list.
|
||||
- Add an issue to the epic.
|
||||
|
||||
Do not confuse **add** with [**create**](#create).
|
||||
|
||||
Do not use **Add new**.
|
||||
|
||||
## Admin Area
|
||||
|
||||
Use title case for **Admin Area**. The UI uses title case.
|
||||
|
|
@ -430,6 +444,18 @@ Use:
|
|||
- The GitLab container registry supports A, B, and C.
|
||||
- You can push a Docker image to your project's container registry.
|
||||
|
||||
## create
|
||||
|
||||
Use **create** when an object does not exist and you are creating it for the first time. **Create** is the opposite of [delete](#delete).
|
||||
|
||||
For example:
|
||||
|
||||
- Create an issue.
|
||||
|
||||
Do not confuse **create** with [**add**](#add).
|
||||
|
||||
Do not use **create new**. The word **create** implies that the object is new, and the extra word is not necessary.
|
||||
|
||||
## currently
|
||||
|
||||
Do not use **currently** when talking about the product or its features. The documentation describes the product as it is today.
|
||||
|
|
@ -471,7 +497,7 @@ Do not use **static role**, **built-in role**, or **predefined role**.
|
|||
|
||||
## delete
|
||||
|
||||
Use **delete** when an object is completely deleted. **Delete** is the opposite of **create**.
|
||||
Use **delete** when an object is completely deleted. **Delete** is the opposite of [create](#create).
|
||||
|
||||
When the object continues to exist, use [**remove**](#remove) instead.
|
||||
For example, you can remove an issue from an epic, but the issue still exists.
|
||||
|
|
@ -1241,6 +1267,13 @@ When the variable is **optional**:
|
|||
|
||||
- You can set the variable.
|
||||
|
||||
## new
|
||||
|
||||
Often, you can avoid the word **new**. When you create an object, it is new,
|
||||
so you don't need this additional word.
|
||||
|
||||
See also [**create**](#create) and [**add**](#add).
|
||||
|
||||
## newer
|
||||
|
||||
Do not use **newer** when talking about version numbers.
|
||||
|
|
|
|||
|
|
@ -5,15 +5,20 @@ description: Users, groups, namespaces, SSH keys.
|
|||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
---
|
||||
|
||||
# Set up your organization
|
||||
# Manage your organization
|
||||
|
||||
Configure your organization and its users. Determine user roles
|
||||
and give everyone access to the projects they need.
|
||||
|
||||
- [Tutorial: Set up your organization](../tutorials/manage_user/index.md)
|
||||
- [Namespaces](../user/namespace/index.md)
|
||||
- [Members](../user/project/members/index.md)
|
||||
- [Organization](../user/organization/index.md) _(In development)_
|
||||
- [Groups](../user/group/index.md)
|
||||
- [Sharing projects and groups](../user/project/members/sharing_projects_groups.md)
|
||||
- [Compliance](../administration/compliance.md)
|
||||
- [Enterprise users](../user/enterprise_user/index.md)
|
||||
- [Service accounts](../user/profile/service_accounts.md)
|
||||
- [User account options](../user/profile/index.md)
|
||||
- [SSH keys](../user/ssh.md)
|
||||
- [GitLab.com settings](../user/gitlab_com/index.md)
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ INFO:
|
|||
Every new Google Cloud Platform (GCP) account receives [$300 in credit](https://console.cloud.google.com/freetrial),
|
||||
and in partnership with Google, GitLab is able to offer an additional $200 for new
|
||||
GCP accounts to get started with the GitLab integration with Google Kubernetes Engine.
|
||||
[Follow this link](https://cloud.google.com/partners/partnercredit/?pcn_code=0014M00001h35gDQAQ#contact-form)
|
||||
[Follow this link](https://cloud.google.com/partners?pcn_code=0014M00001h35gDQAQ&hl=en#contact-form)
|
||||
and apply for credit.
|
||||
|
||||
Learn how to create a new cluster on Google Kubernetes Engine (GKE) through
|
||||
|
|
|
|||
|
|
@ -2523,6 +2523,9 @@ msgstr ""
|
|||
msgid "Access granted"
|
||||
msgstr ""
|
||||
|
||||
msgid "Access permission"
|
||||
msgstr ""
|
||||
|
||||
msgid "Access requests"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -2994,6 +2997,9 @@ msgstr ""
|
|||
msgid "Add internal note"
|
||||
msgstr ""
|
||||
|
||||
msgid "Add interval"
|
||||
msgstr ""
|
||||
|
||||
msgid "Add key"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -15572,8 +15578,10 @@ msgstr ""
|
|||
msgid "CycleAnalyticsStage|is not available for the selected group"
|
||||
msgstr ""
|
||||
|
||||
msgid "CycleAnalytics|%{selectedLabelsCount} selected (%{maxLabels} max)"
|
||||
msgstr ""
|
||||
msgid "CycleAnalytics|%{selectedLabelsCount} label selected (%{maxLabels} max)"
|
||||
msgid_plural "CycleAnalytics|%{selectedLabelsCount} labels selected (%{maxLabels} max)"
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
msgid "CycleAnalytics|'%{name}' is collecting the data. This can take a few minutes."
|
||||
msgstr ""
|
||||
|
|
@ -15599,9 +15607,6 @@ msgstr ""
|
|||
msgid "CycleAnalytics|Date"
|
||||
msgstr ""
|
||||
|
||||
msgid "CycleAnalytics|Display chart filters"
|
||||
msgstr ""
|
||||
|
||||
msgid "CycleAnalytics|If you have recently upgraded your GitLab license from a tier without this feature, it can take up to 30 minutes for data to collect and display."
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -18578,9 +18583,6 @@ msgstr ""
|
|||
msgid "DownloadCommit|Plain Diff"
|
||||
msgstr ""
|
||||
|
||||
msgid "DownloadSource|Download"
|
||||
msgstr ""
|
||||
|
||||
msgid "Downloads"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -20474,6 +20476,9 @@ msgstr ""
|
|||
msgid "Every %{action} attempt has failed: %{job_error_message}. Please try again."
|
||||
msgstr ""
|
||||
|
||||
msgid "Every 2 weeks"
|
||||
msgstr ""
|
||||
|
||||
msgid "Every 3 months"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -23451,6 +23456,9 @@ msgstr ""
|
|||
msgid "Go back to configuration"
|
||||
msgstr ""
|
||||
|
||||
msgid "Go back to edit"
|
||||
msgstr ""
|
||||
|
||||
msgid "Go full screen"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -37287,9 +37295,6 @@ msgstr ""
|
|||
msgid "Pipelines|Your changes have been successfully committed. Now redirecting to the new merge request page."
|
||||
msgstr ""
|
||||
|
||||
msgid "Pipelines|created"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pipelines|error"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -42892,6 +42897,9 @@ msgstr ""
|
|||
msgid "Root cause analysis is a feature that analyzes your logs to determine why a job may have failed and the potential ways to fix it. To generate this analysis, we may share information in your job logs with %{linkStart}Third-Party AI providers%{linkEnd}. Before initiating this analysis, please do not include in your logs any information that could impact the security or privacy of your account."
|
||||
msgstr ""
|
||||
|
||||
msgid "Rotation schedule"
|
||||
msgstr ""
|
||||
|
||||
msgid "Ruby"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -44918,9 +44926,18 @@ msgstr ""
|
|||
msgid "Secrets|Actions"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Add a description for the secret"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Add a new secret to the group by following the instructions in the form below."
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Add a new secret to the project by following the instructions in the form below."
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Add custom interval."
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Add secret"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -44939,6 +44956,12 @@ msgstr ""
|
|||
msgid "Secrets|Edit secret"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Enter a key name"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Intervals"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Last accessed"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -44948,21 +44971,45 @@ msgstr ""
|
|||
msgid "Secrets|New secret"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Preview for %{secretKey}"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Revoke"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Rotation period"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Secret details"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Secret key"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Secrets"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Secrets represent sensitive information your CI job needs to complete work. This sensitive information can be items like API tokens, database credentials, or private keys. Unlike CI/CD variables, which are always presented to a job, secrets must be explicitly required by a job."
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Select a rotation interval"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Select environment"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Set expiration"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Stored secrets"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Value"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secrets|Value for the key"
|
||||
msgstr ""
|
||||
|
||||
msgid "Secure Code Warrior"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -46472,9 +46519,6 @@ msgstr ""
|
|||
msgid "Select"
|
||||
msgstr ""
|
||||
|
||||
msgid "Select Archive Format"
|
||||
msgstr ""
|
||||
|
||||
msgid "Select Git revision"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -46601,6 +46645,9 @@ msgstr ""
|
|||
msgid "Select milestone"
|
||||
msgstr ""
|
||||
|
||||
msgid "Select permission"
|
||||
msgstr ""
|
||||
|
||||
msgid "Select private project"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -46625,6 +46672,9 @@ msgstr ""
|
|||
msgid "Select reviewers"
|
||||
msgstr ""
|
||||
|
||||
msgid "Select roles or users"
|
||||
msgstr ""
|
||||
|
||||
msgid "Select severity (optional)"
|
||||
msgstr ""
|
||||
|
||||
|
|
@ -54658,6 +54708,9 @@ msgstr ""
|
|||
msgid "Use .gitlab-ci.yml"
|
||||
msgstr ""
|
||||
|
||||
msgid "Use CRON syntax. %{linkStart}Learn more.%{linkEnd}"
|
||||
msgstr ""
|
||||
|
||||
msgid "Use Secure Files to store files used by your pipelines such as Android keystores, or Apple provisioning profiles and signing certificates."
|
||||
msgstr ""
|
||||
|
||||
|
|
|
|||
|
|
@ -60,10 +60,6 @@ module QA
|
|||
element 'spinner-placeholder'
|
||||
end
|
||||
|
||||
view 'app/views/projects/buttons/_download.html.haml' do
|
||||
element 'download-source-code-button'
|
||||
end
|
||||
|
||||
view 'app/views/projects/tree/_tree_header.html.haml' do
|
||||
element 'ref-dropdown-container'
|
||||
end
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ RSpec.describe 'Download buttons in branches page', feature_category: :groups_an
|
|||
let(:role) { :developer }
|
||||
let(:status) { 'success' }
|
||||
let(:project) { create(:project, :repository) }
|
||||
let(:download_button_selector) { '[data-testid="download-source-code-button"]' }
|
||||
|
||||
let(:pipeline) do
|
||||
create(
|
||||
|
|
@ -47,7 +48,7 @@ RSpec.describe 'Download buttons in branches page', feature_category: :groups_an
|
|||
|
||||
it 'passes axe automated accessibility testing', :js do
|
||||
find_by_testid('download-source-code-button').click
|
||||
expect(page).to be_axe_clean.within('.project-action-button')
|
||||
expect(page).to be_axe_clean.within(download_button_selector)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ describe('CiResourceComponents', () => {
|
|||
|
||||
const findEmptyState = () => wrapper.findComponent(GlEmptyState);
|
||||
const findLoadingIcon = () => wrapper.findComponent(GlLoadingIcon);
|
||||
const findCopyToClipboardButton = (i) => wrapper.findAllByTestId('copy-to-clipboard').at(i);
|
||||
const findCodeSnippetContainer = (i) => wrapper.findAllByTestId('copy-to-clipboard').at(i);
|
||||
const findComponents = () => wrapper.findAllByTestId('component-section');
|
||||
|
||||
beforeEach(() => {
|
||||
|
|
@ -112,19 +112,20 @@ describe('CiResourceComponents', () => {
|
|||
expect(findComponents()).toHaveLength(components.length);
|
||||
});
|
||||
|
||||
it('renders the component name and snippet', () => {
|
||||
it('renders the component name', () => {
|
||||
components.forEach((component) => {
|
||||
expect(wrapper.text()).toContain(component.name);
|
||||
expect(wrapper.text()).toContain(component.includePath);
|
||||
});
|
||||
});
|
||||
|
||||
it('adds a copy-to-clipboard button', () => {
|
||||
it('renders the component code snippet', () => {
|
||||
components.forEach((component, i) => {
|
||||
const button = findCopyToClipboardButton(i);
|
||||
const codeSnippetContainer = findCodeSnippetContainer(i);
|
||||
const expectedCodeSnippet = `include:
|
||||
- component: ${component.includePath}`;
|
||||
|
||||
expect(button.props().icon).toBe('copy-to-clipboard');
|
||||
expect(button.attributes('data-clipboard-text')).toContain(component.includePath);
|
||||
expect(codeSnippetContainer.exists()).toBe(true);
|
||||
expect(codeSnippetContainer.text()).toContain(expectedCodeSnippet);
|
||||
});
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -68,6 +68,8 @@ describe('Pipeline details header', () => {
|
|||
const findDeleteModal = () => wrapper.findComponent(GlModal);
|
||||
const findCreatedTimeAgo = () => wrapper.findByTestId('pipeline-created-time-ago');
|
||||
const findFinishedTimeAgo = () => wrapper.findByTestId('pipeline-finished-time-ago');
|
||||
const findFinishedCreatedTimeAgo = () =>
|
||||
wrapper.findByTestId('pipeline-finished-created-time-ago');
|
||||
const findPipelineName = () => wrapper.findByTestId('pipeline-name');
|
||||
const findCommitTitle = () => wrapper.findByTestId('pipeline-commit-title');
|
||||
const findTotalJobs = () => wrapper.findByTestId('total-jobs');
|
||||
|
|
@ -221,20 +223,13 @@ describe('Pipeline details header', () => {
|
|||
});
|
||||
|
||||
describe('finished pipeline', () => {
|
||||
it('does not display created time ago', async () => {
|
||||
createComponent();
|
||||
|
||||
await waitForPromises();
|
||||
|
||||
expect(findCreatedTimeAgo().exists()).toBe(false);
|
||||
});
|
||||
|
||||
it('displays finished time ago', async () => {
|
||||
it('displays finished time and created time', async () => {
|
||||
createComponent();
|
||||
|
||||
await waitForPromises();
|
||||
|
||||
expect(findFinishedTimeAgo().exists()).toBe(true);
|
||||
expect(findFinishedCreatedTimeAgo().exists()).toBe(true);
|
||||
});
|
||||
|
||||
it('displays pipeline duartion text', async () => {
|
||||
|
|
@ -257,6 +252,7 @@ describe('Pipeline details header', () => {
|
|||
|
||||
it('does not display finished time ago', () => {
|
||||
expect(findFinishedTimeAgo().exists()).toBe(false);
|
||||
expect(findFinishedCreatedTimeAgo().exists()).toBe(false);
|
||||
});
|
||||
|
||||
it('does not display pipeline duration text', () => {
|
||||
|
|
|
|||
|
|
@ -0,0 +1,116 @@
|
|||
import { GlDisclosureDropdown, GlDisclosureDropdownGroup } from '@gitlab/ui';
|
||||
import { shallowMountExtended } from 'helpers/vue_test_utils_helper';
|
||||
import DownloadDropdown from '~/vue_shared/components/download_dropdown/download_dropdown.vue';
|
||||
|
||||
describe('Download Dropdown', () => {
|
||||
let wrapper;
|
||||
const httpUrl = 'http://foo.bar';
|
||||
const createDownloadItem = (text) => ({
|
||||
extraAttrs: { download: '', rel: 'nofollow' },
|
||||
text,
|
||||
href: `${httpUrl}/archive.${text}`,
|
||||
});
|
||||
const downloadLinks = [
|
||||
{ text: 'zip', path: `${httpUrl}/archive.zip` },
|
||||
{ text: 'tar.gz', path: `${httpUrl}/archive.tar.gz` },
|
||||
{ text: 'tar.bz2', path: `${httpUrl}/archive.tar.bz2` },
|
||||
{ text: 'tar', path: `${httpUrl}/archive.tar` },
|
||||
];
|
||||
const sourceCodeGroupData = {
|
||||
name: 'Download source code',
|
||||
items: ['zip', 'tar.gz', 'tar.bz2', 'tar'].map(createDownloadItem),
|
||||
};
|
||||
|
||||
const artifactsGroupData = {
|
||||
name: 'Download artifacts',
|
||||
items: ['zip', 'tar.gz', 'tar.bz2', 'tar'].map(createDownloadItem),
|
||||
};
|
||||
const defaultPropsData = {
|
||||
downloadLinks,
|
||||
downloadArtifacts: [],
|
||||
cssClass: '',
|
||||
};
|
||||
|
||||
const findDropdown = () => wrapper.findComponent(GlDisclosureDropdown);
|
||||
const findSourceCodeGroup = () => wrapper.findByTestId('source-code-group');
|
||||
const findArtifactsGroup = () => wrapper.findByTestId('artifacts-group');
|
||||
|
||||
const createComponent = (propsData = defaultPropsData) => {
|
||||
wrapper = shallowMountExtended(DownloadDropdown, {
|
||||
propsData,
|
||||
stubs: {
|
||||
GlDisclosureDropdown,
|
||||
GlDisclosureDropdownGroup,
|
||||
},
|
||||
});
|
||||
};
|
||||
|
||||
beforeEach(() => {
|
||||
createComponent();
|
||||
});
|
||||
|
||||
describe('Properties', () => {
|
||||
it('renders a GlDisclosureDropdown dropdown with correct props', () => {
|
||||
expect(findDropdown().props()).toMatchObject({
|
||||
toggleText: 'Download',
|
||||
placement: 'right',
|
||||
icon: 'download',
|
||||
autoClose: false,
|
||||
});
|
||||
});
|
||||
|
||||
it('passes the cssClass prop to the Dropdown', () => {
|
||||
createComponent({ ...defaultPropsData, cssClass: 'test-class' });
|
||||
|
||||
expect(findDropdown().vm.$el.classList).toContain('test-class');
|
||||
});
|
||||
});
|
||||
|
||||
describe('Rendering', () => {
|
||||
it('does not render a border if there are no download links', () => {
|
||||
createComponent({ downloadLinks: [], downloadArtifacts: downloadLinks });
|
||||
|
||||
expect(findArtifactsGroup().props('bordered')).toBe(false);
|
||||
});
|
||||
|
||||
it('renders a border if there are download links', () => {
|
||||
createComponent({ downloadLinks, downloadArtifacts: downloadLinks });
|
||||
|
||||
expect(findArtifactsGroup().props('bordered')).toBe(true);
|
||||
});
|
||||
});
|
||||
|
||||
describe('Download links', () => {
|
||||
it('does not render download links if not set', () => {
|
||||
createComponent({ downloadLinks: [], downloadArtifacts: [] });
|
||||
|
||||
expect(findSourceCodeGroup().exists()).toBe(false);
|
||||
});
|
||||
|
||||
it('renders download links if set', () => {
|
||||
expect(findSourceCodeGroup().exists()).toBe(true);
|
||||
});
|
||||
|
||||
it('renders with correct items', () => {
|
||||
expect(findSourceCodeGroup().props('group')).toEqual(sourceCodeGroupData);
|
||||
});
|
||||
});
|
||||
|
||||
describe('Artifacts', () => {
|
||||
it('does not render download links if not set', () => {
|
||||
expect(findArtifactsGroup().exists()).toBe(false);
|
||||
});
|
||||
|
||||
it('renders download links if set', () => {
|
||||
createComponent({ downloadLinks: [], downloadArtifacts: downloadLinks });
|
||||
|
||||
expect(findArtifactsGroup().exists()).toBe(true);
|
||||
});
|
||||
|
||||
it('renders with correct items', () => {
|
||||
createComponent({ downloadLinks: [], downloadArtifacts: downloadLinks });
|
||||
|
||||
expect(findArtifactsGroup().props('group')).toEqual(artifactsGroupData);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
@ -10,7 +10,7 @@ RSpec.shared_examples 'archive download buttons' do
|
|||
visit path_to_visit
|
||||
end
|
||||
|
||||
context 'private project' do
|
||||
context 'private project', :js do
|
||||
it 'shows archive download buttons with external storage URL prepended and user token appended to their href' do
|
||||
Gitlab::Workhorse::ARCHIVE_FORMATS.each do |format|
|
||||
path = archive_path(project, ref, format)
|
||||
|
|
@ -18,36 +18,45 @@ RSpec.shared_examples 'archive download buttons' do
|
|||
uri.path = path
|
||||
uri.query = "token=#{user.static_object_token}"
|
||||
|
||||
expect(page).to have_link format, href: uri.to_s
|
||||
all('[data-testid="download-source-code-button"]').first do
|
||||
find_by_testid('base-dropdown-toggle').click
|
||||
expect(page).to have_link format, href: uri.to_s
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'public project' do
|
||||
context 'public project', :js do
|
||||
let(:project) { create(:project, :repository, :public) }
|
||||
|
||||
it 'shows archive download buttons with external storage URL prepended to their href' do
|
||||
it 'shows archive download buttons with external storage URL prepended to their href', :js do
|
||||
Gitlab::Workhorse::ARCHIVE_FORMATS.each do |format|
|
||||
path = archive_path(project, ref, format)
|
||||
uri = URI('https://cdn.gitlab.com')
|
||||
uri.path = path
|
||||
|
||||
expect(page).to have_link format, href: uri.to_s
|
||||
all('[data-testid="download-source-code-button"]').first do
|
||||
find_by_testid('base-dropdown-toggle').click
|
||||
expect(page).to have_link format, href: uri.to_s
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'when static objects external storage is disabled' do
|
||||
context 'when static objects external storage is disabled', :js do
|
||||
before do
|
||||
visit path_to_visit
|
||||
end
|
||||
|
||||
it 'shows default archive download buttons' do
|
||||
it 'shows default archive download buttons', :js do
|
||||
Gitlab::Workhorse::ARCHIVE_FORMATS.each do |format|
|
||||
path = archive_path(project, ref, format)
|
||||
|
||||
expect(page).to have_link format, href: path
|
||||
all('[data-testid="download-source-code-button"]').first do
|
||||
find_by_testid('base-dropdown-toggle').click
|
||||
expect(page).to have_link format, href: path
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -3,10 +3,10 @@ module gitlab.com/gitlab-org/gitlab/workhorse
|
|||
go 1.20
|
||||
|
||||
require (
|
||||
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.0
|
||||
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.1
|
||||
github.com/BurntSushi/toml v1.3.2
|
||||
github.com/alecthomas/chroma/v2 v2.12.0
|
||||
github.com/aws/aws-sdk-go v1.50.27
|
||||
github.com/aws/aws-sdk-go v1.50.36
|
||||
github.com/disintegration/imaging v1.6.2
|
||||
github.com/getsentry/raven-go v0.2.0
|
||||
github.com/golang-jwt/jwt/v5 v5.2.1
|
||||
|
|
@ -24,33 +24,33 @@ require (
|
|||
github.com/stretchr/testify v1.9.0
|
||||
gitlab.com/gitlab-org/gitaly/v16 v16.9.1
|
||||
gitlab.com/gitlab-org/labkit v1.21.0
|
||||
gocloud.dev v0.36.0
|
||||
gocloud.dev v0.37.0
|
||||
golang.org/x/image v0.15.0
|
||||
golang.org/x/lint v0.0.0-20210508222113-6edffad5e616
|
||||
golang.org/x/net v0.21.0
|
||||
golang.org/x/oauth2 v0.16.0
|
||||
golang.org/x/net v0.22.0
|
||||
golang.org/x/oauth2 v0.18.0
|
||||
golang.org/x/tools v0.18.0
|
||||
google.golang.org/grpc v1.62.0
|
||||
google.golang.org/protobuf v1.32.0
|
||||
google.golang.org/grpc v1.62.1
|
||||
google.golang.org/protobuf v1.33.0
|
||||
honnef.co/go/tools v0.4.7
|
||||
)
|
||||
|
||||
require (
|
||||
cloud.google.com/go v0.112.0 // indirect
|
||||
cloud.google.com/go/compute v1.23.3 // indirect
|
||||
cloud.google.com/go v0.112.1 // indirect
|
||||
cloud.google.com/go/compute v1.25.0 // indirect
|
||||
cloud.google.com/go/compute/metadata v0.2.3 // indirect
|
||||
cloud.google.com/go/iam v1.1.5 // indirect
|
||||
cloud.google.com/go/monitoring v1.17.0 // indirect
|
||||
cloud.google.com/go/iam v1.1.6 // indirect
|
||||
cloud.google.com/go/monitoring v1.18.0 // indirect
|
||||
cloud.google.com/go/profiler v0.1.0 // indirect
|
||||
cloud.google.com/go/storage v1.36.0 // indirect
|
||||
cloud.google.com/go/trace v1.10.4 // indirect
|
||||
cloud.google.com/go/storage v1.39.1 // indirect
|
||||
cloud.google.com/go/trace v1.10.5 // indirect
|
||||
contrib.go.opencensus.io/exporter/stackdriver v0.13.14 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.2 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.10.0 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.1 // indirect
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.2 // indirect
|
||||
github.com/Azure/go-autorest v14.2.0+incompatible // indirect
|
||||
github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect
|
||||
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.1 // indirect
|
||||
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 // indirect
|
||||
github.com/DataDog/datadog-go v4.4.0+incompatible // indirect
|
||||
github.com/DataDog/sketches-go v1.0.0 // indirect
|
||||
github.com/Microsoft/go-winio v0.6.1 // indirect
|
||||
|
|
@ -64,18 +64,18 @@ require (
|
|||
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
|
||||
github.com/dlclark/regexp2 v1.10.0 // indirect
|
||||
github.com/felixge/httpsnoop v1.0.4 // indirect
|
||||
github.com/go-logr/logr v1.3.0 // indirect
|
||||
github.com/go-logr/logr v1.4.1 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/go-ole/go-ole v1.2.6 // indirect
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
|
||||
github.com/golang/protobuf v1.5.3 // indirect
|
||||
github.com/google/pprof v0.0.0-20230926050212-f7f687d19a98 // indirect
|
||||
github.com/golang/protobuf v1.5.4 // indirect
|
||||
github.com/google/pprof v0.0.0-20240117000934-35fc243c5815 // indirect
|
||||
github.com/google/s2a-go v0.1.7 // indirect
|
||||
github.com/google/uuid v1.6.0 // indirect
|
||||
github.com/google/wire v0.5.0 // indirect
|
||||
github.com/google/wire v0.6.0 // indirect
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect
|
||||
github.com/googleapis/gax-go/v2 v2.12.0 // indirect
|
||||
github.com/googleapis/gax-go/v2 v2.12.2 // indirect
|
||||
github.com/gopherjs/gopherjs v1.17.2 // indirect
|
||||
github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 // indirect
|
||||
github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.0.0 // indirect
|
||||
|
|
@ -86,7 +86,6 @@ require (
|
|||
github.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20210210170715-a8dfcb80d3a7 // indirect
|
||||
github.com/lightstep/lightstep-tracer-go v0.25.0 // indirect
|
||||
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect
|
||||
github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 // indirect
|
||||
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
||||
github.com/oklog/ulid/v2 v2.0.2 // indirect
|
||||
github.com/opentracing/opentracing-go v1.2.0 // indirect
|
||||
|
|
@ -96,9 +95,9 @@ require (
|
|||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
||||
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect
|
||||
github.com/prometheus/client_model v0.5.0 // indirect
|
||||
github.com/prometheus/common v0.45.0 // indirect
|
||||
github.com/prometheus/common v0.46.0 // indirect
|
||||
github.com/prometheus/procfs v0.12.0 // indirect
|
||||
github.com/prometheus/prometheus v0.48.0 // indirect
|
||||
github.com/prometheus/prometheus v0.50.1 // indirect
|
||||
github.com/ryszard/goskiplist v0.0.0-20150312221310-2dfbae5fcf46 // indirect
|
||||
github.com/shabbyrobe/gocovmerge v0.0.0-20190829150210-3e036491d500 // indirect
|
||||
github.com/shirou/gopsutil/v3 v3.21.12 // indirect
|
||||
|
|
@ -110,25 +109,25 @@ require (
|
|||
github.com/uber/jaeger-lib v2.4.1+incompatible // indirect
|
||||
github.com/yusufpapurcu/wmi v1.2.2 // indirect
|
||||
go.opencensus.io v0.24.0 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 // indirect
|
||||
go.opentelemetry.io/otel v1.21.0 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.21.0 // indirect
|
||||
go.opentelemetry.io/otel/trace v1.21.0 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect
|
||||
go.opentelemetry.io/otel v1.24.0 // indirect
|
||||
go.opentelemetry.io/otel/metric v1.24.0 // indirect
|
||||
go.opentelemetry.io/otel/trace v1.24.0 // indirect
|
||||
go.uber.org/atomic v1.11.0 // indirect
|
||||
golang.org/x/crypto v0.19.0 // indirect
|
||||
golang.org/x/crypto v0.21.0 // indirect
|
||||
golang.org/x/exp/typeparams v0.0.0-20221208152030-732eee02a75a // indirect
|
||||
golang.org/x/mod v0.15.0 // indirect
|
||||
golang.org/x/sync v0.6.0 // indirect
|
||||
golang.org/x/sys v0.17.0 // indirect
|
||||
golang.org/x/sys v0.18.0 // indirect
|
||||
golang.org/x/text v0.14.0 // indirect
|
||||
golang.org/x/time v0.5.0 // indirect
|
||||
golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect
|
||||
google.golang.org/api v0.155.0 // indirect
|
||||
google.golang.org/api v0.169.0 // indirect
|
||||
google.golang.org/appengine v1.6.8 // indirect
|
||||
google.golang.org/genproto v0.0.0-20240123012728-ef4313101c80 // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20240123012728-ef4313101c80 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240123012728-ef4313101c80 // indirect
|
||||
google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7 // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20240311173647-c811ad7063a7 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240311173647-c811ad7063a7 // indirect
|
||||
gopkg.in/DataDog/dd-trace-go.v1 v1.32.0 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
|
|
|||
197
workhorse/go.sum
197
workhorse/go.sum
|
|
@ -24,24 +24,24 @@ cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSU
|
|||
cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY=
|
||||
cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ=
|
||||
cloud.google.com/go v0.92.2/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=
|
||||
cloud.google.com/go v0.112.0 h1:tpFCD7hpHFlQ8yPwT3x+QeXqc2T6+n6T+hmABHfDUSM=
|
||||
cloud.google.com/go v0.112.0/go.mod h1:3jEEVwZ/MHU4djK5t5RHuKOA/GbLddgTdVubX1qnPD4=
|
||||
cloud.google.com/go v0.112.1 h1:uJSeirPke5UNZHIb4SxfZklVSiWWVqW4oXlETwZziwM=
|
||||
cloud.google.com/go v0.112.1/go.mod h1:+Vbu+Y1UU+I1rjmzeMOb/8RfkKJK2Gyxi1X6jJCZLo4=
|
||||
cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o=
|
||||
cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE=
|
||||
cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc=
|
||||
cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg=
|
||||
cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc=
|
||||
cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ=
|
||||
cloud.google.com/go/compute v1.23.3 h1:6sVlXXBmbd7jNX0Ipq0trII3e4n1/MsADLK6a+aiVlk=
|
||||
cloud.google.com/go/compute v1.23.3/go.mod h1:VCgBUoMnIVIR0CscqQiPJLAG25E3ZRZMzcFZeQ+h8CI=
|
||||
cloud.google.com/go/compute v1.25.0 h1:H1/4SqSUhjPFE7L5ddzHOfY2bCAvjwNRZPNl6Ni5oYU=
|
||||
cloud.google.com/go/compute v1.25.0/go.mod h1:GR7F0ZPZH8EhChlMo9FkLd7eUTwEymjqQagxzilIxIE=
|
||||
cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY=
|
||||
cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA=
|
||||
cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=
|
||||
cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk=
|
||||
cloud.google.com/go/iam v1.1.5 h1:1jTsCu4bcsNsE4iiqNT5SHwrDRCfRmIaaaVFhRveTJI=
|
||||
cloud.google.com/go/iam v1.1.5/go.mod h1:rB6P/Ic3mykPbFio+vo7403drjlgvoWfYpJhMXEbzv8=
|
||||
cloud.google.com/go/monitoring v1.17.0 h1:blrdvF0MkPPivSO041ihul7rFMhXdVp8Uq7F59DKXTU=
|
||||
cloud.google.com/go/monitoring v1.17.0/go.mod h1:KwSsX5+8PnXv5NJnICZzW2R8pWTis8ypC4zmdRD63Tw=
|
||||
cloud.google.com/go/iam v1.1.6 h1:bEa06k05IO4f4uJonbB5iAgKTPpABy1ayxaIZV/GHVc=
|
||||
cloud.google.com/go/iam v1.1.6/go.mod h1:O0zxdPeGBoFdWW3HWmBxJsk0pfvNM/p/qa82rWOGTwI=
|
||||
cloud.google.com/go/monitoring v1.18.0 h1:NfkDLQDG2UR3WYZVQE8kwSbUIEyIqJUPl+aOQdFH1T4=
|
||||
cloud.google.com/go/monitoring v1.18.0/go.mod h1:c92vVBCeq/OB4Ioyo+NbN2U7tlg5ZH41PZcdvfc+Lcg=
|
||||
cloud.google.com/go/profiler v0.1.0 h1:MG/rxKC1MztRfEWMGYKFISxyZak5hNh29f0A/z2tvWk=
|
||||
cloud.google.com/go/profiler v0.1.0/go.mod h1:D7S7LV/zKbRWkOzYL1b5xytpqt8Ikd/v/yvf1/Tx2pQ=
|
||||
cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I=
|
||||
|
|
@ -53,28 +53,28 @@ cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0Zeo
|
|||
cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk=
|
||||
cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs=
|
||||
cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0=
|
||||
cloud.google.com/go/storage v1.36.0 h1:P0mOkAcaJxhCTvAkMhxMfrTKiNcub4YmmPBtlhAyTr8=
|
||||
cloud.google.com/go/storage v1.36.0/go.mod h1:M6M/3V/D3KpzMTJyPOR/HU6n2Si5QdaXYEsng2xgOs8=
|
||||
cloud.google.com/go/trace v1.10.4 h1:2qOAuAzNezwW3QN+t41BtkDJOG42HywL73q8x/f6fnM=
|
||||
cloud.google.com/go/trace v1.10.4/go.mod h1:Nso99EDIK8Mj5/zmB+iGr9dosS/bzWCJ8wGmE6TXNWY=
|
||||
cloud.google.com/go/storage v1.39.1 h1:MvraqHKhogCOTXTlct/9C3K3+Uy2jBmFYb3/Sp6dVtY=
|
||||
cloud.google.com/go/storage v1.39.1/go.mod h1:xK6xZmxZmo+fyP7+DEF6FhNc24/JAe95OLyOHCXFH1o=
|
||||
cloud.google.com/go/trace v1.10.5 h1:0pr4lIKJ5XZFYD9GtxXEWr0KkVeigc3wlGpZco0X1oA=
|
||||
cloud.google.com/go/trace v1.10.5/go.mod h1:9hjCV1nGBCtXbAE4YK7OqJ8pmPYSxPA0I67JwRd5s3M=
|
||||
contrib.go.opencensus.io/exporter/stackdriver v0.13.14 h1:zBakwHardp9Jcb8sQHcHpXy/0+JIb1M8KjigCJzx7+4=
|
||||
contrib.go.opencensus.io/exporter/stackdriver v0.13.14/go.mod h1:5pSSGY0Bhuk7waTHuDf4aQ8D2DrhgETRo9fy6k3Xlzc=
|
||||
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.2 h1:c4k2FIYIh4xtwqrQwV0Ct1v5+ehlNXj5NI/MWVsiTkQ=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.9.2/go.mod h1:5FDJtLEO/GxwNgUxbwrY3LP0pEoThTQJtk2oysdXHxM=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.10.0 h1:n1DH8TPV4qqPTje2RcUBYwtrTWlabVp4n46+74X2pn4=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.10.0/go.mod h1:HDcZnuGbiyppErN6lB+idp4CKhjbc8gwjto6OPpyggM=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.1 h1:sO0/P7g68FrryJzljemN+6GTssUXdANk6aJ7T1ZxnsQ=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.5.1/go.mod h1:h8hyGFDsU5HMivxiS2iYFZsgDbU9OnnJ163x5UGVKYo=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.2 h1:LqbJ/WzJUwBf8UiaSzgX7aMclParm9/5Vgp+TY51uBQ=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/internal v1.5.2/go.mod h1:yInRyqWXAuaPrgI7p70+lDDgh3mlBohis29jGMISnmc=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage v1.5.0 h1:AifHbc4mg0x9zW52WOpKbsHaDKuRhlI7TVl47thgQ70=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.0 h1:IfFdxTUDiV58iZqPKgyWiz4X4fCxZeQ1pTQPImLYXpY=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.0/go.mod h1:SUZc9YRRHfx2+FAQKNDGrssXehqLpxmwRv2mC/5ntj4=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.1 h1:fXPMAmuh0gDuRDey0atC8cXBuKIlqCzCkL8sm1n9Ov0=
|
||||
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.1/go.mod h1:SUZc9YRRHfx2+FAQKNDGrssXehqLpxmwRv2mC/5ntj4=
|
||||
github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs=
|
||||
github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24=
|
||||
github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk=
|
||||
github.com/Azure/go-autorest/autorest/to v0.4.0/go.mod h1:fE8iZBn7LQR7zH/9XU2NcPR4o9jEImooCeWJcYV/zLE=
|
||||
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.1 h1:DzHpqpoJVaCgOUdVHxE8QB52S6NiVdDQvGlny1qvPqA=
|
||||
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.1/go.mod h1:wP83P5OoQ5p6ip3ScPr0BAq0BvuPAvacpEuSzyouqAI=
|
||||
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2 h1:XHOnouVk1mxXfQidrMEnLlPk9UMeRtyBTnEFtxkV0kU=
|
||||
github.com/AzureAD/microsoft-authentication-library-for-go v1.2.2/go.mod h1:wP83P5OoQ5p6ip3ScPr0BAq0BvuPAvacpEuSzyouqAI=
|
||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
||||
github.com/BurntSushi/toml v1.3.2 h1:o7IhLm0Msx3BaB+n3Ag7L8EVlByGnpq14C4YWiu/gL8=
|
||||
github.com/BurntSushi/toml v1.3.2/go.mod h1:CxXYINrC8qIiEnFrOxCa7Jy5BFHlXnUU2pbicEuybxQ=
|
||||
|
|
@ -94,27 +94,27 @@ github.com/alecthomas/chroma/v2 v2.12.0/go.mod h1:4TQu7gdfuPjSh76j78ietmqh9LiurG
|
|||
github.com/alecthomas/repr v0.2.0 h1:HAzS41CIzNW5syS8Mf9UwXhNH1J9aix/BvDRf1Ml2Yk=
|
||||
github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
|
||||
github.com/aws/aws-sdk-go v1.44.256/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI=
|
||||
github.com/aws/aws-sdk-go v1.50.27 h1:96ifhrSuja+AzdP3W/T2337igqVQ2FcSIJYkk+0rCeA=
|
||||
github.com/aws/aws-sdk-go v1.50.27/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk=
|
||||
github.com/aws/aws-sdk-go-v2 v1.24.0 h1:890+mqQ+hTpNuw0gGP6/4akolQkSToDJgHfQE7AwGuk=
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.5.4 h1:OCs21ST2LrepDfD3lwlQiOqIGp6JiEUqG84GzTDoyJs=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.26.1 h1:z6DqMxclFGL3Zfo+4Q0rLnAZ6yVkzCRxhRMsiRQnD1o=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.16.12 h1:v/WgB8NxprNvr5inKIiVVrXPuuTegM+K8nncFkr1usU=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.14.10 h1:w98BT5w+ao1/r5sUuiH6JkVzjowOKeOJRHERyy1vh58=
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.15.7 h1:FnLf60PtjXp8ZOzQfhJVsqF0OtYKQZWQfqOLshh8YXg=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.2.9 h1:v+HbZaCGmOwnTTVS86Fleq0vPzOd7tnJGbFhP0stNLs=
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.5.9 h1:N94sVhRACtXyVcjXxrwK1SKFIJrA9pOJ5yu2eSHnmls=
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.7.2 h1:GrSw8s0Gs/5zZ0SX+gX4zQjRnRsMJDJ2sLur1gRBhEM=
|
||||
github.com/aws/aws-sdk-go-v2/internal/v4a v1.2.9 h1:ugD6qzjYtB7zM5PN/ZIeaAIyefPaD82G8+SJopgvUpw=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.10.4 h1:/b31bi3YVNlkzkBrm9LfpaKoaYZUxIAj4sHfOTmLfqw=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.2.9 h1:/90OR2XbSYfXucBMJ4U14wrjlfleq/0SB6dZDPncgmo=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.10.9 h1:Nf2sHxjMJR8CSImIVCONRi4g0Su3J+TSTbS7G0pUeMU=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.16.9 h1:iEAeF6YC3l4FzlJPP9H3Ko1TXpdjdqWffxXjp8SY6uk=
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.47.5 h1:Keso8lIOS+IzI2MkPZyK6G0LYcK3My2LQ+T5bxghEAY=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.18.5 h1:ldSFWz9tEHAwHNmjx2Cvy1MjP5/L9kNoR0skc6wyOOM=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.21.5 h1:2k9KmFawS63euAkY4/ixVNsYYwrwnd5fIvgEKkfZFNM=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.26.5 h1:5UYvv8JUvllZsRnfrcMQ+hJ9jNICmcgKPAO1CER25Wg=
|
||||
github.com/aws/smithy-go v1.19.0 h1:KWFKQV80DpP3vJrrA9sVAHQ5gc2z8i4EzrLhLlWXcBM=
|
||||
github.com/aws/aws-sdk-go v1.50.36 h1:PjWXHwZPuTLMR1NIb8nEjLucZBMzmf84TLoLbD8BZqk=
|
||||
github.com/aws/aws-sdk-go v1.50.36/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk=
|
||||
github.com/aws/aws-sdk-go-v2 v1.25.3 h1:xYiLpZTQs1mzvz5PaI6uR0Wh57ippuEthxS4iK5v0n0=
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.1 h1:gTK2uhtAPtFcdRRJilZPx8uJLL2J85xK11nKtWL0wfU=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.27.7 h1:JSfb5nOQF01iOgxFI5OIKWwDiEXWTyTgg1Mm1mHi0A4=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.17.7 h1:WJd+ubWKoBeRh7A5iNMnxEOs982SyVKOJD+K8HIezu4=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.15.3 h1:p+y7FvkK2dxS+FEwRIDHDe//ZX+jDhP8HHE50ppj4iI=
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.9 h1:vXY/Hq1XdxHBIYgBUmug/AbMyIe1AKulPYS2/VE1X70=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.3 h1:ifbIbHZyGl1alsAhPIYsHOg5MuApgqOvVeI8wIugXfs=
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.3 h1:Qvodo9gHG9F3E8SfYOspPeBt0bjSbsevK8WhRAUHcoY=
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.0 h1:hT8rVHwugYE2lEfdFE0QWVo81lF7jMrYJVDWI+f+VxU=
|
||||
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.3 h1:mDnFOE2sVkyphMWtTH+stv0eW3k0OTx94K63xpxHty4=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.11.1 h1:EyBZibRTVAs6ECHZOw5/wlylS9OcTzwyjeQMudmREjE=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.3.5 h1:mbWNpfRUTT6bnacmvOTKXZjR/HycibdWzNpfbrbLDIs=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.11.5 h1:K/NXvIftOlX+oGgWGIa3jDyYLDNsdVhsjHmsBH2GLAQ=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.17.3 h1:4t+QEX7BsXz98W8W1lNvMAG+NX8qHz2CjLBxQKku40g=
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.51.4 h1:lW5xUzOPGAMY7HPuNF4FdyBwRc3UJ/e8KsapbesVeNU=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.20.2 h1:XOPfar83RIRPEzfihnp+U6udOveKZJvPQ76SKWrLRHc=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.23.2 h1:pi0Skl6mNl2w8qWZXcdOyg197Zsf4G97U7Sso9JXGZE=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.28.4 h1:Ppup1nVNAOWbBOrcoOxaxPeEnSFB2RnnQdguhXpmeQk=
|
||||
github.com/aws/smithy-go v1.20.1 h1:4SZlSlMr36UEqC7XOyRVb27XMeZubNcBNN+9IgEPIQw=
|
||||
github.com/beevik/ntp v1.3.0 h1:/w5VhpW5BGKS37vFm1p9oVk/t4HnnkKZAZIubHM6F7Q=
|
||||
github.com/beevik/ntp v1.3.0/go.mod h1:vD6h1um4kzXpqmLTuu0cCLcC+NfvC0IC+ltmEDA8E78=
|
||||
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
|
||||
|
|
@ -141,7 +141,6 @@ github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGX
|
|||
github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
|
||||
github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk=
|
||||
github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs=
|
||||
github.com/cncf/xds/go v0.0.0-20231128003011-0fa0005c9caa h1:jQCWAUqqlij9Pgj2i/PB79y4KOPYVyFYdROxgaCwdTQ=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
|
||||
|
|
@ -161,7 +160,6 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.m
|
|||
github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk=
|
||||
github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ=
|
||||
github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c=
|
||||
github.com/envoyproxy/protoc-gen-validate v1.0.4 h1:gVPz/FMfvh57HdSJQyvBtF00j8JU4zdyUgIUNhlgg0A=
|
||||
github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg=
|
||||
github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U=
|
||||
github.com/fsnotify/fsnotify v1.4.3-0.20170329110642-4da3e2cfbabc/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
|
||||
|
|
@ -176,8 +174,8 @@ github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2
|
|||
github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY=
|
||||
github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A=
|
||||
github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A=
|
||||
github.com/go-logr/logr v1.3.0 h1:2y3SDp0ZXuc6/cjLSZ+Q3ir+QB9T/iG5yYRXqsagWSY=
|
||||
github.com/go-logr/logr v1.3.0/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/logr v1.4.1 h1:pKouT5E8xu9zeFC39JXRDukb6JFQPXM5p5I91188VAQ=
|
||||
github.com/go-logr/logr v1.4.1/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/go-ole/go-ole v1.2.4/go.mod h1:XCwSNxSkXRo4vlyPy93sltvi/qJq0jqQhjqQNIwKuxM=
|
||||
|
|
@ -225,8 +223,8 @@ github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw
|
|||
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
|
||||
github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx4u74HPM=
|
||||
github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
|
||||
github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
|
||||
github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
|
||||
github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
|
||||
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
|
||||
github.com/golang/snappy v0.0.0-20170215233205-553a64147049/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
|
||||
github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
|
||||
github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
|
||||
|
|
@ -271,24 +269,24 @@ github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLe
|
|||
github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
|
||||
github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
|
||||
github.com/google/pprof v0.0.0-20210804190019-f964ff605595/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
|
||||
github.com/google/pprof v0.0.0-20230926050212-f7f687d19a98 h1:pUa4ghanp6q4IJHwE9RwLgmVFfReJN+KbQ8ExNEUUoQ=
|
||||
github.com/google/pprof v0.0.0-20230926050212-f7f687d19a98/go.mod h1:czg5+yv1E0ZGTi6S6vVK1mke0fV+FaUhNGcd6VRS9Ik=
|
||||
github.com/google/pprof v0.0.0-20240117000934-35fc243c5815 h1:WzfWbQz/Ze8v6l++GGbGNFZnUShVpP/0xffCPLL+ax8=
|
||||
github.com/google/pprof v0.0.0-20240117000934-35fc243c5815/go.mod h1:czg5+yv1E0ZGTi6S6vVK1mke0fV+FaUhNGcd6VRS9Ik=
|
||||
github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
|
||||
github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o=
|
||||
github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw=
|
||||
github.com/google/subcommands v1.0.1/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk=
|
||||
github.com/google/subcommands v1.2.0/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk=
|
||||
github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/google/wire v0.5.0 h1:I7ELFeVBr3yfPIcc8+MWvrjk+3VjbcSzoXm3JVa+jD8=
|
||||
github.com/google/wire v0.5.0/go.mod h1:ngWDr9Qvq3yZA10YrxfyGELY/AFWGVpy9c1LTRi1EoU=
|
||||
github.com/google/wire v0.6.0 h1:HBkoIh4BdSxoyo9PveV8giw7ZsaBOvzWKfcg/6MrVwI=
|
||||
github.com/google/wire v0.6.0/go.mod h1:F4QhpQ9EDIdJ1Mbop/NZBRB+5yrR6qg3BnctaoUk6NA=
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.3.2 h1:Vie5ybvEvT75RniqhfFxPRy3Bf7vr3h0cechB90XaQs=
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0=
|
||||
github.com/googleapis/gax-go v2.0.0+incompatible/go.mod h1:SFVmujtThgffbyetf+mdk2eWhX2bMyUtNHzFKcPA9HY=
|
||||
github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=
|
||||
github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=
|
||||
github.com/googleapis/gax-go/v2 v2.12.0 h1:A+gCJKdRfqXkr+BIRGtZLibNXf0m1f9E4HG56etFpas=
|
||||
github.com/googleapis/gax-go/v2 v2.12.0/go.mod h1:y+aIqrI5eb1YGMVJfuV3185Ts/D7qKpsEkdD5+I6QGU=
|
||||
github.com/googleapis/gax-go/v2 v2.12.2 h1:mhN09QQW1jEWeMF74zGR81R30z4VJzjZsfkUhuHF+DA=
|
||||
github.com/googleapis/gax-go/v2 v2.12.2/go.mod h1:61M8vcyyXR2kqKFxKrfA22jaA8JGF7Dc8App1U3H6jc=
|
||||
github.com/gopherjs/gopherjs v1.17.2 h1:fQnZVsXk8uxXIStYb0N4bGk7jeyTalG/wsZjQ25dO0g=
|
||||
github.com/gopherjs/gopherjs v1.17.2/go.mod h1:pRRIvn/QzFLrKfvEz3qUuEhtE/zLCWfreZ6J5gM2i+k=
|
||||
github.com/gorilla/websocket v1.5.1 h1:gmztn0JnHVt9JZquRuzLw3g4wouNVzKL15iLr/zn/QY=
|
||||
|
|
@ -344,9 +342,7 @@ github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2
|
|||
github.com/magiconair/properties v1.7.4-0.20170902060319-8d7837e64d3c/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ=
|
||||
github.com/mattn/go-colorable v0.0.10-0.20170816031813-ad5389df28cd/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=
|
||||
github.com/mattn/go-isatty v0.0.2/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4=
|
||||
github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0 h1:jWpvCLoY8Z/e3VKvlsiIGKtc+UG6U5vzxaoagmhXfyg=
|
||||
github.com/matttproud/golang_protobuf_extensions/v2 v2.0.0/go.mod h1:QUyp042oQthUoa9bqDv0ER0wrtXnBruoNd7aNjkbP+k=
|
||||
github.com/miekg/dns v1.1.56 h1:5imZaSeoRNvpM9SzWNhEcP9QliKiz20/dA2QabIGVnE=
|
||||
github.com/miekg/dns v1.1.58 h1:ca2Hdkz+cDg/7eNF6V56jjzuZ4aCAE+DbVkILdQWG/4=
|
||||
github.com/mitchellh/copystructure v1.2.0 h1:vpKXTN4ewci03Vljg/q9QvCGUDttBOGBIa15WveJJGw=
|
||||
github.com/mitchellh/copystructure v1.2.0/go.mod h1:qLl+cE2AmVv+CoeAwDPye/v+N2HKCj9FbZEVFJRxO9s=
|
||||
github.com/mitchellh/mapstructure v0.0.0-20170523030023-d0303fe80992/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
|
||||
|
|
@ -382,12 +378,12 @@ github.com/prometheus/client_golang v1.18.0/go.mod h1:T+GXkCk5wSJyOqMIzVgvvjFDlk
|
|||
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
|
||||
github.com/prometheus/client_model v0.5.0 h1:VQw1hfvPvk3Uv6Qf29VrPF32JB6rtbgI6cYPYQjL0Qw=
|
||||
github.com/prometheus/client_model v0.5.0/go.mod h1:dTiFglRmd66nLR9Pv9f0mZi7B7fk5Pm3gvsjB5tr+kI=
|
||||
github.com/prometheus/common v0.45.0 h1:2BGz0eBc2hdMDLnO/8n0jeB3oPrt2D08CekT0lneoxM=
|
||||
github.com/prometheus/common v0.45.0/go.mod h1:YJmSTw9BoKxJplESWWxlbyttQR4uaEcGyv9MZjVOJsY=
|
||||
github.com/prometheus/common v0.46.0 h1:doXzt5ybi1HBKpsZOL0sSkaNHJJqkyfEWZGGqqScV0Y=
|
||||
github.com/prometheus/common v0.46.0/go.mod h1:Tp0qkxpb9Jsg54QMe+EAmqXkSV7Evdy1BTn+g2pa/hQ=
|
||||
github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k6Bo=
|
||||
github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo=
|
||||
github.com/prometheus/prometheus v0.48.0 h1:yrBloImGQ7je4h8M10ujGh4R6oxYQJQKlMuETwNskGk=
|
||||
github.com/prometheus/prometheus v0.48.0/go.mod h1:SRw624aMAxTfryAcP8rOjg4S/sHHaetx2lyJJ2nM83g=
|
||||
github.com/prometheus/prometheus v0.50.1 h1:N2L+DYrxqPh4WZStU+o1p/gQlBaqFbcLBTjlp3vpdXw=
|
||||
github.com/prometheus/prometheus v0.50.1/go.mod h1:FvE8dtQ1Ww63IlyKBn1V4s+zMwF9kHkVNkQBR1pM4CU=
|
||||
github.com/redis/go-redis/v9 v9.3.1 h1:KqdY8U+3X6z+iACvumCNxnoluToB+9Me+TvyFa21Mds=
|
||||
github.com/redis/go-redis/v9 v9.3.1/go.mod h1:hdY0cQFCN4fnSYT6TkisLufl/4W5UIXyv0b/CLO2V2M=
|
||||
github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ=
|
||||
|
|
@ -466,27 +462,27 @@ go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk=
|
|||
go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E=
|
||||
go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0=
|
||||
go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo=
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 h1:SpGay3w+nEwMpfVnbqOLH5gY52/foP8RE8UzTZ1pdSE=
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1/go.mod h1:4UoMYEZOC0yN/sPGH76KPkkU7zgiEWYWL9vwmbnTJPE=
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 h1:aFJWCqJMNjENlcleuuOkGAPH82y0yULBScfXcIEdS24=
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1/go.mod h1:sEGXWArGqc3tVa+ekntsN65DmVbVeW+7lTKTjZF3/Fo=
|
||||
go.opentelemetry.io/otel v1.21.0 h1:hzLeKBZEL7Okw2mGzZ0cc4k/A7Fta0uoPgaJCr8fsFc=
|
||||
go.opentelemetry.io/otel v1.21.0/go.mod h1:QZzNPQPm1zLX4gZK4cMi+71eaorMSGT3A4znnUvNNEo=
|
||||
go.opentelemetry.io/otel/metric v1.21.0 h1:tlYWfeo+Bocx5kLEloTjbcDwBuELRrIFxwdQ36PlJu4=
|
||||
go.opentelemetry.io/otel/metric v1.21.0/go.mod h1:o1p3CA8nNHW8j5yuQLdc1eeqEaPfzug24uvsyIEJRWM=
|
||||
go.opentelemetry.io/otel/sdk v1.21.0 h1:FTt8qirL1EysG6sTQRZ5TokkU8d0ugCj8htOgThZXQ8=
|
||||
go.opentelemetry.io/otel/trace v1.21.0 h1:WD9i5gzvoUPuXIXH24ZNBudiarZDKuekPqi/E8fpfLc=
|
||||
go.opentelemetry.io/otel/trace v1.21.0/go.mod h1:LGbsEB0f9LGjN+OZaQQ26sohbOmiMR+BaslueVtS/qQ=
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg=
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0/go.mod h1:Mjt1i1INqiaoZOMGR1RIUJN+i3ChKoFRqzrRQhlkbs0=
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk=
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw=
|
||||
go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo=
|
||||
go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo=
|
||||
go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI=
|
||||
go.opentelemetry.io/otel/metric v1.24.0/go.mod h1:VYhLe1rFfxuTXLgj4CBiyz+9WYBA8pNGJgDcSFRKBco=
|
||||
go.opentelemetry.io/otel/sdk v1.22.0 h1:6coWHw9xw7EfClIC/+O31R8IY3/+EiRFHevmHafB2Gw=
|
||||
go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI=
|
||||
go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU=
|
||||
go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI=
|
||||
go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc=
|
||||
go.uber.org/atomic v1.11.0 h1:ZvwS0R+56ePWxUNi+Atn9dWONBPp/AUETXlHW0DxSjE=
|
||||
go.uber.org/atomic v1.11.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0=
|
||||
go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A=
|
||||
go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A=
|
||||
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
||||
go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU=
|
||||
go.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI=
|
||||
gocloud.dev v0.36.0 h1:q5zoXux4xkOZP473e1EZbG8Gq9f0vlg1VNH5Du/ybus=
|
||||
gocloud.dev v0.36.0/go.mod h1:bLxah6JQVKBaIxzsr5BQLYB4IYdWHkMZdzCXlo6F0gg=
|
||||
gocloud.dev v0.37.0 h1:XF1rN6R0qZI/9DYjN16Uy0durAmSlf58DHOcb28GPro=
|
||||
gocloud.dev v0.37.0/go.mod h1:7/O4kqdInCNsc6LqgmuFnS0GRew4XNNYWpA44yQnwco=
|
||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
|
||||
golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
|
||||
|
|
@ -494,8 +490,10 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U
|
|||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
|
||||
golang.org/x/crypto v0.10.0/go.mod h1:o4eNf7Ede1fv+hwOwZsTHl9EsPFO6q6ZvYR8vYfY45I=
|
||||
golang.org/x/crypto v0.19.0 h1:ENy+Az/9Y1vSrlrvBSyna3PITt4tiZLf7sgCjZBX7Wo=
|
||||
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
|
||||
golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc=
|
||||
golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg=
|
||||
golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA=
|
||||
golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs=
|
||||
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
|
||||
|
|
@ -541,6 +539,8 @@ golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
|
|||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
|
||||
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
||||
golang.org/x/mod v0.10.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
||||
golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
|
||||
golang.org/x/mod v0.14.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||
golang.org/x/mod v0.15.0 h1:SernR4v+D55NyBH2QiEQrlBAnj1ECL6AGrA5+dPaMY8=
|
||||
golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
|
||||
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||
|
|
@ -585,8 +585,10 @@ golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
|
|||
golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns=
|
||||
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
|
||||
golang.org/x/net v0.11.0/go.mod h1:2L/ixqYpgIVXmeoSA/4Lu7BzTG4KIyPIryS4IsOd1oQ=
|
||||
golang.org/x/net v0.21.0 h1:AQyQV4dYCvJ7vGmJyKki9+PBdyvhkSd8EIx/qb0AYv4=
|
||||
golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44=
|
||||
golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk=
|
||||
golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY=
|
||||
golang.org/x/net v0.22.0 h1:9sGLhx7iRIHEiX0oAJ3MRZMUCElJgy7Br1nO+AMN3Tc=
|
||||
golang.org/x/net v0.22.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
|
||||
golang.org/x/oauth2 v0.0.0-20170912212905-13449ad91cb2/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
|
||||
|
|
@ -602,8 +604,8 @@ golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ
|
|||
golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
|
||||
golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
|
||||
golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
|
||||
golang.org/x/oauth2 v0.16.0 h1:aDkGMBSYxElaoP81NpoUoz2oo2R2wHdZpGToUxfyQrQ=
|
||||
golang.org/x/oauth2 v0.16.0/go.mod h1:hqZ+0LWXsiVoZpeld6jVt06P3adbS2Uu911W1SsJv2o=
|
||||
golang.org/x/oauth2 v0.18.0 h1:09qnuIAgzdx1XplqJvW6CQqMCtGZykZWcXzPMPUusvI=
|
||||
golang.org/x/oauth2 v0.18.0/go.mod h1:Wf7knwG0MPoWIMMBgFlEaSUDaKskp0dCfrlJRJXbBi8=
|
||||
golang.org/x/sync v0.0.0-20170517211232-f52d1811a629/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
|
@ -618,6 +620,7 @@ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJ
|
|||
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
|
||||
golang.org/x/sync v0.6.0 h1:5BMeUDZ7vkXGfEr1x9B4bRcTH4lpkTkpdh0T/J+qjbQ=
|
||||
golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
|
||||
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
|
|
@ -681,8 +684,10 @@ golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
|||
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.9.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y=
|
||||
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||
golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
|
||||
golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
|
||||
golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
|
||||
|
|
@ -690,6 +695,8 @@ golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
|
|||
golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY=
|
||||
golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
|
||||
golang.org/x/term v0.9.0/go.mod h1:M6DEAAIenWoTxdKrOltXcmDY3rSplQUkrvaDU5FcQyo=
|
||||
golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU=
|
||||
golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY=
|
||||
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
|
|
@ -704,6 +711,7 @@ golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
|||
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
||||
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
|
||||
golang.org/x/text v0.10.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
|
||||
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
|
||||
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
|
||||
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
|
||||
golang.org/x/time v0.0.0-20170424234030-8be79e1e0910/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||
|
|
@ -718,7 +726,6 @@ golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3
|
|||
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||
golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||
golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||
golang.org/x/tools v0.0.0-20190422233926-fe54fb35175b/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
|
||||
golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
|
||||
golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
|
||||
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
|
||||
|
|
@ -771,6 +778,8 @@ golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
|
|||
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
|
||||
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
|
||||
golang.org/x/tools v0.8.0/go.mod h1:JxBZ99ISMI5ViVkT1tr6tdNmXeTrcpVSD3vZ1RsRdN4=
|
||||
golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
|
||||
golang.org/x/tools v0.17.0/go.mod h1:xsh6VxdV005rRVaS6SSAf9oiAqljS7UZUacMZ8Bnsps=
|
||||
golang.org/x/tools v0.18.0 h1:k8NLag8AGHnn+PHbl7g43CtqZAwG60vZkLqgyZgIHgQ=
|
||||
golang.org/x/tools v0.18.0/go.mod h1:GL7B4CwcLLeo59yx/9UWWuNOW1n3VZ4f5axWfML7Lcg=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
|
|
@ -806,8 +815,8 @@ google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtuk
|
|||
google.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw=
|
||||
google.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU=
|
||||
google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k=
|
||||
google.golang.org/api v0.155.0 h1:vBmGhCYs0djJttDNynWo44zosHlPvHmA0XiN2zP2DtA=
|
||||
google.golang.org/api v0.155.0/go.mod h1:GI5qK5f40kCpHfPn6+YzGAByIKWv8ujFnmoWm7Igduk=
|
||||
google.golang.org/api v0.169.0 h1:QwWPy71FgMWqJN/l6jVlFHUa29a7dcUy02I8o799nPY=
|
||||
google.golang.org/api v0.169.0/go.mod h1:gpNOiMA2tZ4mf5R9Iwf4rK/Dcz0fbdIgWYWVoxmsyLg=
|
||||
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
|
||||
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
|
||||
google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
|
||||
|
|
@ -870,12 +879,12 @@ google.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm
|
|||
google.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48=
|
||||
google.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48=
|
||||
google.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w=
|
||||
google.golang.org/genproto v0.0.0-20240123012728-ef4313101c80 h1:KAeGQVN3M9nD0/bQXnr/ClcEMJ968gUXJQ9pwfSynuQ=
|
||||
google.golang.org/genproto v0.0.0-20240123012728-ef4313101c80/go.mod h1:cc8bqMqtv9gMOr0zHg2Vzff5ULhhL2IXP4sbcn32Dro=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20240123012728-ef4313101c80 h1:Lj5rbfG876hIAYFjqiJnPHfhXbv+nzTWfm04Fg/XSVU=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20240123012728-ef4313101c80/go.mod h1:4jWUdICTdgc3Ibxmr8nAJiiLHwQBY0UI0XZcEMaFKaA=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240123012728-ef4313101c80 h1:AjyfHzEPEFp/NpvfN5g+KDla3EMojjhRVZc1i7cj+oM=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240123012728-ef4313101c80/go.mod h1:PAREbraiVEVGVdTZsVWjSbbTtSyGbAgIIvni8a8CD5s=
|
||||
google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7 h1:ImUcDPHjTrAqNhlOkSocDLfG9rrNHH7w7uoKWPaWZ8s=
|
||||
google.golang.org/genproto v0.0.0-20240311173647-c811ad7063a7/go.mod h1:/3XmxOjePkvmKrHuBy4zNFw7IzxJXtAgdpXi8Ll990U=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20240311173647-c811ad7063a7 h1:oqta3O3AnlWbmIE3bFnWbu4bRxZjfbWCp0cKSuZh01E=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20240311173647-c811ad7063a7/go.mod h1:VQW3tUculP/D4B+xVCo+VgSq8As6wA9ZjHl//pmk+6s=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240311173647-c811ad7063a7 h1:8EeVk1VKMD+GD/neyEHGmz7pFblqPjHoi+PGQIlLx2s=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20240311173647-c811ad7063a7/go.mod h1:WtryC6hu0hhx87FDGxWCDptyssuo68sk10vYjF+T9fY=
|
||||
google.golang.org/grpc v1.2.1-0.20170921194603-d4b75ebd4f9f/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw=
|
||||
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
|
||||
google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38=
|
||||
|
|
@ -902,8 +911,8 @@ google.golang.org/grpc v1.37.1/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQ
|
|||
google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM=
|
||||
google.golang.org/grpc v1.39.0/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE=
|
||||
google.golang.org/grpc v1.39.1/go.mod h1:PImNr+rS9TWYb2O4/emRugxiyHZ5JyHW5F+RPnDzfrE=
|
||||
google.golang.org/grpc v1.62.0 h1:HQKZ/fa1bXkX1oFOvSjmZEUL8wLSaZTjCcLAlmZRtdk=
|
||||
google.golang.org/grpc v1.62.0/go.mod h1:IWTG0VlJLCh1SkC58F7np9ka9mx/WNkjl4PGJaiq+QE=
|
||||
google.golang.org/grpc v1.62.1 h1:B4n+nfKzOICUXMgyrNd19h/I9oH0L1pizfk1d4zSgTk=
|
||||
google.golang.org/grpc v1.62.1/go.mod h1:IWTG0VlJLCh1SkC58F7np9ka9mx/WNkjl4PGJaiq+QE=
|
||||
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw=
|
||||
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
|
||||
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
|
||||
|
|
@ -918,8 +927,8 @@ google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlba
|
|||
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
|
||||
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
|
||||
google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
|
||||
google.golang.org/protobuf v1.32.0 h1:pPC6BG5ex8PDFnkbrGU3EixyhKcQ2aDuBS36lqK/C7I=
|
||||
google.golang.org/protobuf v1.32.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos=
|
||||
google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI=
|
||||
google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos=
|
||||
gopkg.in/DataDog/dd-trace-go.v1 v1.32.0 h1:DkD0plWEVUB8v/Ru6kRBW30Hy/fRNBC8hPdcExuBZMc=
|
||||
gopkg.in/DataDog/dd-trace-go.v1 v1.32.0/go.mod h1:wRKMf/tRASHwH/UOfPQ3IQmVFhTz2/1a1/mpXoIjF54=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
|
|
|
|||
|
|
@ -48,7 +48,8 @@ func (o *GoCloudObject) Upload(ctx context.Context, r io.Reader) error {
|
|||
defer o.bucket.Close()
|
||||
|
||||
writerOptions := &blob.WriterOptions{
|
||||
BufferSize: ChunkSize,
|
||||
BufferSize: ChunkSize,
|
||||
DisableContentTypeDetection: true,
|
||||
}
|
||||
writer, err := o.bucket.NewWriter(ctx, o.objectName, writerOptions)
|
||||
if err != nil {
|
||||
|
|
|
|||
|
|
@ -38,6 +38,10 @@ func TestGoCloudObjectUpload(t *testing.T) {
|
|||
require.NoError(t, err)
|
||||
require.Equal(t, []byte(test.ObjectContent), received)
|
||||
|
||||
attr, err := bucket.Attributes(ctx, objectName)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, "", attr.ContentType)
|
||||
|
||||
cancel()
|
||||
|
||||
require.Eventually(t, func() bool {
|
||||
|
|
|
|||
|
|
@ -38,4 +38,8 @@ func GoCloudObjectExists(t *testing.T, bucketDir string, objectName string) {
|
|||
exists, err := bucket.Exists(ctx, objectName)
|
||||
require.NoError(t, err)
|
||||
require.True(t, exists)
|
||||
|
||||
attr, err := bucket.Attributes(ctx, objectName)
|
||||
require.NoError(t, err)
|
||||
require.Equal(t, "", attr.ContentType)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue