Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
c08ac104a1
commit
9c590535c8
6 changed files with 19 additions and 148 deletions
|
@ -6,8 +6,8 @@
|
|||
# For a list of all options, see https://vale.sh/docs/topics/styles/
|
||||
extends: existence
|
||||
message: 'Link "%s" must be a relative link with a .md extension.'
|
||||
link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#links-to-internal-documentation
|
||||
link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#links-within-the-same-repository
|
||||
level: error
|
||||
scope: raw
|
||||
raw:
|
||||
- '\[.+\]\(https?:\/\/docs\.gitlab\.com\/[ce]e.*\)'
|
||||
- '\[[^\]]+\]\(https?:\/\/docs\.gitlab\.com\/[ce]e.*?\)'
|
||||
|
|
|
@ -152,9 +152,6 @@ The following metrics are available from the `/metrics` endpoint:
|
|||
for replication to complete after the replication job starts. Available in GitLab 12.10 and later.
|
||||
- `gitaly_praefect_replication_delay_bucket`, a histogram measuring how much time passes between
|
||||
when the replication job is created and when it starts. Available in GitLab 12.10 and later.
|
||||
- `gitaly_praefect_node_latency_bucket`, a histogram measuring the latency in Gitaly returning
|
||||
health check information to Praefect. This indicates Praefect connection saturation. Available in
|
||||
GitLab 12.10 and later.
|
||||
- `gitaly_praefect_connections_total`, the total number of connections to Praefect. [Introduced](https://gitlab.com/gitlab-org/gitaly/-/merge_requests/4220) in GitLab 14.7.
|
||||
|
||||
To monitor [strong consistency](index.md#strong-consistency), you can use the following Prometheus metrics:
|
||||
|
|
|
@ -6,6 +6,14 @@ info: To determine the technical writer assigned to the Stage/Group associated w
|
|||
|
||||
# Documentation deployments
|
||||
|
||||
## Deployment environments
|
||||
|
||||
The [GitLab documentation site](https://docs.gitlab.com/) is a static site hosted by [GitLab Pages](../../../user/project/pages/index.md). The deployment is done by the [Pages deploy job](#pages-deploy-job).
|
||||
|
||||
The website hosts documentation only for the [currently supported](../../../policy/maintenance.md) GitLab versions. Documentation for older versions is built and uploaded as Docker images to be downloaded from [GitLab Docs archives](https://docs.gitlab.com/archives/).
|
||||
|
||||
## Parts of release process
|
||||
|
||||
The documentation [release process](https://gitlab.com/gitlab-org/gitlab-docs/-/blob/main/doc/releases.md)
|
||||
involves:
|
||||
|
||||
|
@ -24,10 +32,8 @@ For general information on using Docker with CI/CD pipelines, see [Docker integr
|
|||
|
||||
## Stable branches
|
||||
|
||||
Stable branches for documentation include the relevant stable branches of all the projects required to publish the entire
|
||||
documentation suite. For example, the stable version of documentation for version `14.4` includes:
|
||||
Pipelines for stable branches in the documentation project pull the relevant stable branches of included projects. For example, the documentation for stable version `14.4` is built from the [`14.4`](https://gitlab.com/gitlab-org/gitlab-docs/-/tree/14.4) branch of the `gitlab-docs` project, which then includes:
|
||||
|
||||
- The [`14.4`](https://gitlab.com/gitlab-org/gitlab-docs/-/tree/14.4) branch of the `gitlab-docs` project.
|
||||
- The [`14-4-stable-ee`](https://gitlab.com/gitlab-org/gitlab/-/tree/14-4-stable-ee) branch of the `gitlab` project.
|
||||
- The [`14-4-stable`](https://gitlab.com/gitlab-org/gitlab-runner/-/tree/14-4-stable) branch of the `gitlab-runner` project.
|
||||
- The [`14-4-stable`](https://gitlab.com/gitlab-org/omnibus-gitlab/-/tree/14-4-stable) branch of the `omnibus-gitlab` project.
|
||||
|
@ -117,7 +123,7 @@ graph TD
|
|||
G--"Latest `gitlab-docs:latest` image<br>pushed up"-->H
|
||||
```
|
||||
|
||||
## Documentation Pages deployment
|
||||
## Pages deploy job
|
||||
|
||||
[GitLab Docs](https://docs.gitlab.com) is a [Pages site](../../../user/project/pages/index.md) and documentation updates
|
||||
for it must be deployed to become available.
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
"@gitlab/at.js": "1.5.7",
|
||||
"@gitlab/favicon-overlay": "2.0.0",
|
||||
"@gitlab/svgs": "3.5.0",
|
||||
"@gitlab/ui": "49.0.1",
|
||||
"@gitlab/ui": "49.0.2",
|
||||
"@gitlab/visual-review-tools": "1.7.3",
|
||||
"@gitlab/web-ide": "0.0.1-dev-20220815034418",
|
||||
"@rails/actioncable": "6.1.4-7",
|
||||
|
@ -270,4 +270,4 @@
|
|||
"node": ">=12.22.1",
|
||||
"yarn": "^1.10.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,139 +1,7 @@
|
|||
import $ from 'jquery';
|
||||
import { loadHTMLFixture, resetHTMLFixture } from 'helpers/fixtures';
|
||||
import { formatUtcOffset, formatTimezone } from '~/lib/utils/datetime_utility';
|
||||
import TimezoneDropdown, {
|
||||
findTimezoneByIdentifier,
|
||||
} from '~/pages/projects/pipeline_schedules/shared/components/timezone_dropdown';
|
||||
import { findTimezoneByIdentifier } from '~/pages/projects/pipeline_schedules/shared/components/timezone_dropdown';
|
||||
|
||||
describe('Timezone Dropdown', () => {
|
||||
let $inputEl = null;
|
||||
let $dropdownEl = null;
|
||||
let $wrapper = null;
|
||||
const tzListSel = '.dropdown-content ul li a.is-active';
|
||||
|
||||
const initTimezoneDropdown = (options = {}) => {
|
||||
// eslint-disable-next-line no-new
|
||||
new TimezoneDropdown({
|
||||
$inputEl,
|
||||
$dropdownEl,
|
||||
...options,
|
||||
});
|
||||
};
|
||||
|
||||
const findDropdownToggleText = () => $wrapper.find('.dropdown-toggle-text');
|
||||
|
||||
describe('Initialize', () => {
|
||||
describe('with dropdown already loaded', () => {
|
||||
beforeEach(() => {
|
||||
loadHTMLFixture('pipeline_schedules/edit.html');
|
||||
$wrapper = $('.dropdown');
|
||||
$inputEl = $('#schedule_cron_timezone');
|
||||
$inputEl.val('');
|
||||
$dropdownEl = $('.js-timezone-dropdown');
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
resetHTMLFixture();
|
||||
});
|
||||
|
||||
it('can take an $inputEl in the constructor', () => {
|
||||
initTimezoneDropdown();
|
||||
|
||||
const tzStr = '[UTC + 5.5] Sri Jayawardenepura';
|
||||
const tzValue = 'Asia/Colombo';
|
||||
|
||||
expect($inputEl.val()).toBe('Etc/UTC');
|
||||
|
||||
$(`${tzListSel}:contains('${tzStr}')`, $wrapper).trigger('click');
|
||||
|
||||
const val = $inputEl.val();
|
||||
|
||||
expect(val).toBe(tzValue);
|
||||
expect(val).not.toBe('Etc/UTC');
|
||||
});
|
||||
|
||||
it('will format data array of timezones into a list of offsets', () => {
|
||||
initTimezoneDropdown();
|
||||
|
||||
const data = $dropdownEl.data('data');
|
||||
const formatted = $wrapper.find(tzListSel).text();
|
||||
|
||||
data.forEach((item) => {
|
||||
expect(formatted).toContain(formatTimezone(item));
|
||||
});
|
||||
});
|
||||
|
||||
describe('when `allowEmpty` property is `false`', () => {
|
||||
beforeEach(() => {
|
||||
initTimezoneDropdown();
|
||||
});
|
||||
|
||||
it('will default the timezone to UTC', () => {
|
||||
const tz = $inputEl.val();
|
||||
|
||||
expect(tz).toBe('Etc/UTC');
|
||||
});
|
||||
});
|
||||
|
||||
describe('when `allowEmpty` property is `true`', () => {
|
||||
beforeEach(() => {
|
||||
initTimezoneDropdown({
|
||||
allowEmpty: true,
|
||||
});
|
||||
});
|
||||
|
||||
it('will default the value of the input to an empty string', () => {
|
||||
expect($inputEl.val()).toBe('');
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('without dropdown loaded', () => {
|
||||
beforeEach(() => {
|
||||
loadHTMLFixture('pipeline_schedules/edit.html');
|
||||
$wrapper = $('.dropdown');
|
||||
$inputEl = $('#schedule_cron_timezone');
|
||||
$dropdownEl = $('.js-timezone-dropdown');
|
||||
});
|
||||
|
||||
it('will populate the list of UTC offsets after the dropdown is loaded', () => {
|
||||
expect($wrapper.find(tzListSel).length).toEqual(0);
|
||||
|
||||
initTimezoneDropdown();
|
||||
|
||||
expect($wrapper.find(tzListSel).length).toEqual($($dropdownEl).data('data').length);
|
||||
});
|
||||
|
||||
it('will call a provided handler when a new timezone is selected', () => {
|
||||
const onSelectTimezone = jest.fn();
|
||||
|
||||
initTimezoneDropdown({ onSelectTimezone });
|
||||
|
||||
$wrapper.find(tzListSel).first().trigger('click');
|
||||
|
||||
expect(onSelectTimezone).toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('will correctly set the dropdown label if a timezone identifier is set on the inputEl', () => {
|
||||
$inputEl.val('America/St_Johns');
|
||||
|
||||
initTimezoneDropdown({ displayFormat: (selectedItem) => formatTimezone(selectedItem) });
|
||||
|
||||
expect(findDropdownToggleText().html()).toEqual('[UTC - 2.5] Newfoundland');
|
||||
});
|
||||
|
||||
it('will call a provided `displayFormat` handler to format the dropdown value', () => {
|
||||
const displayFormat = jest.fn();
|
||||
|
||||
initTimezoneDropdown({ displayFormat });
|
||||
|
||||
$wrapper.find(tzListSel).first().trigger('click');
|
||||
|
||||
expect(displayFormat).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('formatUtcOffset', () => {
|
||||
it('will convert negative utc offsets in seconds to hours and minutes', () => {
|
||||
expect(formatUtcOffset(-21600)).toEqual('- 6');
|
||||
|
|
|
@ -1113,10 +1113,10 @@
|
|||
resolved "https://registry.yarnpkg.com/@gitlab/svgs/-/svgs-3.5.0.tgz#226240b7aa93db986f4c6f7738ca2a1846b5234d"
|
||||
integrity sha512-/djPsJzUY7i/FaydRVt3ZyXiFf5HGNo1rg2mfLn1EpXvT4zc2ag5ECwnYcPb97KgqFCJX6Tk+Ndu8Wh3GoOW1g==
|
||||
|
||||
"@gitlab/ui@49.0.1":
|
||||
version "49.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@gitlab/ui/-/ui-49.0.1.tgz#ee26f7250363502bb4d5b15f40534f4f68e65a6d"
|
||||
integrity sha512-u/qMexzVckgf1zyKmXGDsSUzeF7CLBJP4EvdgN9ijDmq1mQRhGKx73FRUc7g+RSCSQCPpxhD5k1vY7aTouxYgQ==
|
||||
"@gitlab/ui@49.0.2":
|
||||
version "49.0.2"
|
||||
resolved "https://registry.yarnpkg.com/@gitlab/ui/-/ui-49.0.2.tgz#4d545fdb4165cf961176fb8972fb9bbfe6b15f1f"
|
||||
integrity sha512-hleFBhGbNDItQVe/EavY8K1sAaeTsYZeOb2Z9+W1xafqOlruxOnM1fW3/Rjn9d2dEA8kNCwav1yTwH72wUE4rg==
|
||||
dependencies:
|
||||
"@popperjs/core" "^2.11.2"
|
||||
bootstrap-vue "2.20.1"
|
||||
|
|
Loading…
Reference in a new issue