Bug 1753209 - remove repositories which have reached end of life or are not accessed anymore through Treeherder

This commit is contained in:
Sebastian Hengst 2022-04-26 23:01:29 +02:00
Родитель 81d502cfe5
Коммит 5bebdbfe74
23 изменённых файлов: 45 добавлений и 72 удалений

Просмотреть файл

@ -52,7 +52,7 @@ a job as specified in the [YML Schema].
Here is a set of example parameters that could be used to run it: Here is a set of example parameters that could be used to run it:
```bash ```bash
./manage.py publish_to_pulse mozilla-inbound.staging amqp://treeherder-test:mypassword@pulse.mozilla.org:5672/ ./scratch/test_job.json ./manage.py publish_to_pulse autoland.staging amqp://treeherder-test:mypassword@pulse.mozilla.org:5672/ ./scratch/test_job.json
``` ```
You can use the handy Pulse Inspector to view messages in your exchange to You can use the handy Pulse Inspector to view messages in your exchange to

Просмотреть файл

@ -13,7 +13,7 @@ properties:
- scheduler - scheduler
- Self-serve: Rebuilt by foo@example.com - Self-serve: Rebuilt by foo@example.com
- Self-serve: Requested by foo@example.com - Self-serve: Requested by foo@example.com
- The Nightly scheduler named 'mozilla-inbound periodic' triggered this build - The Nightly scheduler named 'autoland periodic' triggered this build
- unknown - unknown
type: 'string' type: 'string'
minLength: 1 minLength: 1

Просмотреть файл

@ -12,28 +12,28 @@ class TreeherderClientTest(unittest.TestCase):
@responses.activate @responses.activate
def test_get_job(self): def test_get_job(self):
tdc = TreeherderClient() tdc = TreeherderClient()
url = tdc._get_endpoint_url(tdc.JOBS_ENDPOINT, project='mozilla-inbound') url = tdc._get_endpoint_url(tdc.JOBS_ENDPOINT, project='autoland')
content = { content = {
"meta": {"count": 3, "repository": "mozilla-inbound", "offset": 0}, "meta": {"count": 3, "repository": "autoland", "offset": 0},
"results": self.JOB_RESULTS, "results": self.JOB_RESULTS,
} }
responses.add(responses.GET, url, json=content, match_querystring=True, status=200) responses.add(responses.GET, url, json=content, match_querystring=True, status=200)
jobs = tdc.get_jobs("mozilla-inbound") jobs = tdc.get_jobs("autoland")
self.assertEqual(len(jobs), 3) self.assertEqual(len(jobs), 3)
self.assertEqual(jobs, self.JOB_RESULTS) self.assertEqual(jobs, self.JOB_RESULTS)
@responses.activate @responses.activate
def test_get_pushes(self): def test_get_pushes(self):
tdc = TreeherderClient() tdc = TreeherderClient()
url = tdc._get_endpoint_url(tdc.PUSH_ENDPOINT, project='mozilla-inbound') url = tdc._get_endpoint_url(tdc.PUSH_ENDPOINT, project='autoland')
content = { content = {
"meta": {"count": 3, "repository": "mozilla-inbound", "offset": 0}, "meta": {"count": 3, "repository": "autoland", "offset": 0},
"results": self.PUSHES, "results": self.PUSHES,
} }
responses.add(responses.GET, url, json=content, match_querystring=True, status=200) responses.add(responses.GET, url, json=content, match_querystring=True, status=200)
pushes = tdc.get_pushes("mozilla-inbound") pushes = tdc.get_pushes("autoland")
self.assertEqual(len(pushes), 3) self.assertEqual(len(pushes), 3)
self.assertEqual(pushes, self.PUSHES) self.assertEqual(pushes, self.PUSHES)

Просмотреть файл

@ -37,7 +37,6 @@ def empty_backfill_report(test_perf_alert_summary) -> BackfillReport:
'repository_name', 'repository_name',
[ [
'autoland', 'autoland',
'mozilla-inbound',
'mozilla-beta', 'mozilla-beta',
'mozilla-central', 'mozilla-central',
], ],

Просмотреть файл

@ -137,13 +137,6 @@ def test_data_ingestion(setup_repository_data, mock_file_bugzilla_map_request):
.order_by('path') .order_by('path')
) )
print(
list(
BugzillaComponent.objects.all()
.values_list('product', 'component')
.order_by('product', 'component')
)
)
EXPECTED_BUGZILLA_COMPONENTS_IMPORT_2 = [ EXPECTED_BUGZILLA_COMPONENTS_IMPORT_2 = [
('Core', 'Storage: IndexedDB'), ('Core', 'Storage: IndexedDB'),
('Core', 'Storage: IndexedDB2'), ('Core', 'Storage: IndexedDB2'),

Просмотреть файл

@ -87,8 +87,8 @@ const result = {
describe('getRevisionUrl helper', () => { describe('getRevisionUrl helper', () => {
test('escapes some html symbols', () => { test('escapes some html symbols', () => {
expect(getRevisionUrl('1234567890ab', 'mozilla-inbound')).toEqual( expect(getRevisionUrl('1234567890ab', 'autoland')).toEqual(
'/jobs?repo=mozilla-inbound&revision=1234567890ab', '/jobs?repo=autoland&revision=1234567890ab',
); );
}); });
}); });

Просмотреть файл

@ -15,7 +15,7 @@ describe('BugFiler', () => {
const fullLog = const fullLog =
'https://taskcluster.net/api/queue/v1/task/AGs4CgN_RnCTb943uQn8NQ/runs/0/artifacts/public/logs/live_backing.log'; 'https://taskcluster.net/api/queue/v1/task/AGs4CgN_RnCTb943uQn8NQ/runs/0/artifacts/public/logs/live_backing.log';
const parsedLog = const parsedLog =
'http://localhost:5000/logviewer.html#?job_id=89017089&repo=mozilla-inbound'; 'http://localhost:5000/logviewer.html#?job_id=89017089&repo=autoland';
const reftest = ''; const reftest = '';
const selectedJob = { const selectedJob = {
job_group_name: 'Mochitests executed by TaskCluster', job_group_name: 'Mochitests executed by TaskCluster',

Просмотреть файл

@ -14,7 +14,7 @@ const history = createBrowserHistory();
describe('JobGroup component', () => { describe('JobGroup component', () => {
let countGroup; let countGroup;
let dupGroup; let dupGroup;
const repoName = 'mozilla-inbound'; const repoName = 'autoland';
const filterModel = new FilterModel({ const filterModel = new FilterModel({
pushRoute: history.push, pushRoute: history.push,
router: { location: history.location }, router: { location: history.location },

Просмотреть файл

@ -14,15 +14,15 @@ const repo = new RepositoryModel({
name: 'development', name: 'development',
description: '', description: '',
}, },
name: 'mozilla-inbound', name: 'autoland',
dvcs_type: 'hg', dvcs_type: 'hg',
url: 'https://hg.mozilla.org/integration/mozilla-inbound', url: 'https://hg.mozilla.org/integration/autoland',
branch: null, branch: null,
codebase: 'gecko', codebase: 'gecko',
description: '', description: '',
active_status: 'active', active_status: 'active',
performance_alerts_enabled: true, performance_alerts_enabled: true,
pushlogURL: 'https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml', pushlogURL: 'https://hg.mozilla.org/integration/autoland/pushloghtml',
}); });
const push = { const push = {
id: 151371, id: 151371,

Просмотреть файл

@ -4,7 +4,7 @@
"push_id": 477720, "push_id": 477720,
"prev_push_id": 477665, "prev_push_id": 477665,
"created": "2019-05-20T11:41:31.419156", "created": "2019-05-20T11:41:31.419156",
"repository": "mozilla-inbound", "repository": "autoland",
"framework": 1, "framework": 1,
"alerts": [ "alerts": [
{ {
@ -153,7 +153,7 @@
"push_id": 480946, "push_id": 480946,
"prev_push_id": 480864, "prev_push_id": 480864,
"created": "2019-05-24T10:51:16.976819", "created": "2019-05-24T10:51:16.976819",
"repository": "mozilla-inbound", "repository": "autoland",
"framework": 2, "framework": 2,
"alerts": [ "alerts": [
{ {

Просмотреть файл

@ -3,7 +3,7 @@
"push_id": 477720, "push_id": 477720,
"prev_push_id": 477665, "prev_push_id": 477665,
"created": "2019-05-20T11:41:31.419156", "created": "2019-05-20T11:41:31.419156",
"repository": "mozilla-inbound", "repository": "autoland",
"framework": 1, "framework": 1,
"alerts": [ "alerts": [
{ {

Просмотреть файл

@ -16,11 +16,11 @@ describe('FilterModel', () => {
describe('parsing an old url', () => { describe('parsing an old url', () => {
it('should parse the repo with defaults', () => { it('should parse the repo with defaults', () => {
history.location.search = '?repo=mozilla-inbound'; history.location.search = '?repo=autoland';
const urlParams = getFilterUrlParamsWithDefaults(history.location); const urlParams = getFilterUrlParamsWithDefaults(history.location);
expect(urlParams).toEqual({ expect(urlParams).toEqual({
repo: ['mozilla-inbound'], repo: ['autoland'],
resultStatus: [ resultStatus: [
'testfailed', 'testfailed',
'busted', 'busted',
@ -39,14 +39,14 @@ describe('FilterModel', () => {
it('should parse resultStatus params', () => { it('should parse resultStatus params', () => {
history.location.search = history.location.search =
'?repo=mozilla-inbound&filter-resultStatus=testfailed&' + '?repo=autoland&filter-resultStatus=testfailed&' +
'filter-resultStatus=busted&filter-resultStatus=exception&' + 'filter-resultStatus=busted&filter-resultStatus=exception&' +
'filter-resultStatus=success&filter-resultStatus=retry' + 'filter-resultStatus=success&filter-resultStatus=retry' +
'&filter-resultStatus=runnable'; '&filter-resultStatus=runnable';
const urlParams = getFilterUrlParamsWithDefaults(history.location); const urlParams = getFilterUrlParamsWithDefaults(history.location);
expect(urlParams).toEqual({ expect(urlParams).toEqual({
repo: ['mozilla-inbound'], repo: ['autoland'],
resultStatus: [ resultStatus: [
'testfailed', 'testfailed',
'busted', 'busted',
@ -62,14 +62,14 @@ describe('FilterModel', () => {
it('should parse searchStr params with tier and groupState intact', () => { it('should parse searchStr params with tier and groupState intact', () => {
history.location.search = history.location.search =
'?repo=mozilla-inbound&filter-searchStr=Linux%20x64%20debug%20build-linux64-base-toolchains%2Fdebug%20(Bb)&filter-tier=1&group_state=expanded'; '?repo=autoland&filter-searchStr=Linux%20x64%20debug%20build-linux64-base-toolchains%2Fdebug%20(Bb)&filter-tier=1&group_state=expanded';
const urlParams = { const urlParams = {
...getNonFilterUrlParams(history.location), ...getNonFilterUrlParams(history.location),
...getFilterUrlParamsWithDefaults(history.location), ...getFilterUrlParamsWithDefaults(history.location),
}; };
expect(urlParams).toEqual({ expect(urlParams).toEqual({
repo: ['mozilla-inbound'], repo: ['autoland'],
resultStatus: [ resultStatus: [
'testfailed', 'testfailed',
'busted', 'busted',
@ -95,12 +95,11 @@ describe('FilterModel', () => {
}); });
it('should parse job field filters', () => { it('should parse job field filters', () => {
history.location.search = history.location.search = '?repo=autoland&filter-job_type_name=mochi';
'?repo=mozilla-inbound&filter-job_type_name=mochi';
const urlParams = getFilterUrlParamsWithDefaults(history.location); const urlParams = getFilterUrlParamsWithDefaults(history.location);
expect(urlParams).toEqual({ expect(urlParams).toEqual({
repo: ['mozilla-inbound'], repo: ['autoland'],
resultStatus: [ resultStatus: [
'testfailed', 'testfailed',
'busted', 'busted',
@ -122,12 +121,12 @@ describe('FilterModel', () => {
describe('parsing a new url', () => { describe('parsing a new url', () => {
it('should parse resultStatus and searchStr', () => { it('should parse resultStatus and searchStr', () => {
history.location.search = history.location.search =
'?repo=mozilla-inbound&resultStatus=testfailed,busted,exception,success,retry,runnable&' + '?repo=autoland&resultStatus=testfailed,busted,exception,success,retry,runnable&' +
'searchStr=linux,x64,debug,build-linux64-base-toolchains%2Fdebug,(bb)'; 'searchStr=linux,x64,debug,build-linux64-base-toolchains%2Fdebug,(bb)';
const urlParams = getFilterUrlParamsWithDefaults(history.location); const urlParams = getFilterUrlParamsWithDefaults(history.location);
expect(urlParams).toEqual({ expect(urlParams).toEqual({
repo: ['mozilla-inbound'], repo: ['autoland'],
resultStatus: [ resultStatus: [
'testfailed', 'testfailed',
'busted', 'busted',
@ -149,12 +148,11 @@ describe('FilterModel', () => {
}); });
it('should preserve the case in email addresses', () => { it('should preserve the case in email addresses', () => {
history.location.search = history.location.search = '?repo=autoland&author=VYV03354@nifty.ne.jp';
'?repo=mozilla-inbound&author=VYV03354@nifty.ne.jp';
const urlParams = getFilterUrlParamsWithDefaults(history.location); const urlParams = getFilterUrlParamsWithDefaults(history.location);
expect(urlParams).toEqual({ expect(urlParams).toEqual({
repo: ['mozilla-inbound'], repo: ['autoland'],
resultStatus: [ resultStatus: [
'testfailed', 'testfailed',
'busted', 'busted',

Просмотреть файл

@ -381,7 +381,7 @@ test('Chart icon opens the graph link for an alert in a new tab', async () => {
expect(graphLink).toBeInTheDocument(); expect(graphLink).toBeInTheDocument();
expect(graphLink).toHaveAttribute( expect(graphLink).toHaveAttribute(
'href', 'href',
'./graphs?timerange=31536000&series=mozilla-inbound,1944439,1,1', './graphs?timerange=31536000&series=autoland,1944439,1,1',
); );
expect(graphLink).toHaveAttribute('target', '_blank'); expect(graphLink).toHaveAttribute('target', '_blank');
}); });

Просмотреть файл

@ -7,7 +7,7 @@ def test_valid_report(client):
"""Tests that a correctly formed CSP violation report is accepted when unauthenticated.""" """Tests that a correctly formed CSP violation report is accepted when unauthenticated."""
valid_report = { valid_report = {
'csp-report': { 'csp-report': {
'blocked-uri': 'https://treestatus.mozilla-releng.net/trees/mozilla-inbound', 'blocked-uri': 'https://treestatus.mozilla-releng.net/trees/autoland',
'document-uri': 'http://localhost:8000/', 'document-uri': 'http://localhost:8000/',
'original-policy': '...', 'original-policy': '...',
'referrer': '', 'referrer': '',

Просмотреть файл

@ -20,7 +20,7 @@ class Command(BaseCommand):
def add_arguments(self, parser): def add_arguments(self, parser):
parser.add_argument( parser.add_argument(
'routing_key', help="The routing key for publishing. Ex: 'mozilla-inbound.staging'" 'routing_key', help="The routing key for publishing. Ex: 'autoland.staging'"
) )
parser.add_argument( parser.add_argument(
'connection_url', help="The Pulse url. Ex: 'amqp://guest:guest@localhost:5672/'" 'connection_url', help="The Pulse url. Ex: 'amqp://guest:guest@localhost:5672/'"

Просмотреть файл

@ -271,7 +271,7 @@ class Commenter:
"total": 5, "total": 5,
"per_repository": { "per_repository": {
"fx-team": 2, "fx-team": 2,
"mozilla-inbound": 3 "autoland": 3
}, },
"per_platform": { "per_platform": {
"windows10-64": 52, "windows10-64": 52,

Просмотреть файл

@ -22,7 +22,7 @@
"dvcs_type": "hg", "dvcs_type": "hg",
"name": "mozilla-inbound", "name": "mozilla-inbound",
"url": "https://hg.mozilla.org/integration/mozilla-inbound", "url": "https://hg.mozilla.org/integration/mozilla-inbound",
"active_status": "active", "active_status": "onhold",
"codebase": "gecko", "codebase": "gecko",
"repository_group": 1, "repository_group": 1,
"description": "", "description": "",
@ -1041,7 +1041,7 @@
"dvcs_type": "hg", "dvcs_type": "hg",
"name": "version-control-tools", "name": "version-control-tools",
"url": "https://hg.mozilla.org/hgcustom/version-control-tools", "url": "https://hg.mozilla.org/hgcustom/version-control-tools",
"active_status": "active", "active_status": "onhold",
"codebase": "version-control-tools", "codebase": "version-control-tools",
"repository_group": 7, "repository_group": 7,
"description": "Version control infrastructure and tooling.", "description": "Version control infrastructure and tooling.",
@ -1263,7 +1263,7 @@
"name": "snippets-service", "name": "snippets-service",
"url": "https://github.com/mozmeao/snippets-service", "url": "https://github.com/mozmeao/snippets-service",
"branch": "master", "branch": "master",
"active_status": "active", "active_status": "onhold",
"codebase": "snippets-service", "codebase": "snippets-service",
"repository_group": 5, "repository_group": 5,
"description": "Snippets Service", "description": "Snippets Service",
@ -1278,7 +1278,7 @@
"name": "socorro", "name": "socorro",
"url": "https://github.com/mozilla-services/socorro", "url": "https://github.com/mozilla-services/socorro",
"branch": "master", "branch": "master",
"active_status": "active", "active_status": "onhold",
"codebase": "socorro", "codebase": "socorro",
"repository_group": 5, "repository_group": 5,
"description": "Server for collecting, processing, and displaying crash reports from clients using the Breakpad libraries", "description": "Server for collecting, processing, and displaying crash reports from clients using the Breakpad libraries",
@ -1601,7 +1601,7 @@
"dvcs_type": "hg", "dvcs_type": "hg",
"name": "mozilla-esr78", "name": "mozilla-esr78",
"url": "https://hg.mozilla.org/releases/mozilla-esr78", "url": "https://hg.mozilla.org/releases/mozilla-esr78",
"active_status": "active", "active_status": "onhold",
"codebase": "gecko", "codebase": "gecko",
"repository_group": 2, "repository_group": 2,
"life_cycle_order": 10000, "life_cycle_order": 10000,
@ -1616,7 +1616,7 @@
"dvcs_type": "hg", "dvcs_type": "hg",
"name": "comm-esr78", "name": "comm-esr78",
"url": "https://hg.mozilla.org/releases/comm-esr78", "url": "https://hg.mozilla.org/releases/comm-esr78",
"active_status": "active", "active_status": "onhold",
"codebase": "comm", "codebase": "comm",
"repository_group": 8, "repository_group": 8,
"description": "", "description": "",

Просмотреть файл

@ -5,7 +5,7 @@ import django_filters
from django.db.models import Aggregate, CharField from django.db.models import Aggregate, CharField
# queries are faster when filtering a range by id rather than name # queries are faster when filtering a range by id rather than name
# trunk: mozilla-central, mozilla-inbound, autoland # trunk: mozilla-central, autoland
# firefox-releases: mozilla-beta, mozilla-release # firefox-releases: mozilla-beta, mozilla-release
# comm-releases: comm-beta # comm-releases: comm-beta
REPO_GROUPS = { REPO_GROUPS = {

Просмотреть файл

@ -58,12 +58,7 @@ export const isPerfTest = function isPerfTest(job) {
}; };
export const isTestIsolatable = function isTestIsolatable(job) { export const isTestIsolatable = function isTestIsolatable(job) {
const isolatableRepos = [ const isolatableRepos = ['autoland', 'mozilla-central', 'try'];
'autoland',
'mozilla-central',
'mozilla-inbound',
'try',
];
const repoName = getRepo(); const repoName = getRepo();
if (!isolatableRepos.includes(repoName)) { if (!isolatableRepos.includes(repoName)) {
return false; return false;

Просмотреть файл

@ -3,13 +3,10 @@ export const treeOptions = [
'all', 'all',
'trunk', 'trunk',
'mozilla-central', 'mozilla-central',
'mozilla-inbound',
'mozilla-esr78',
'mozilla-esr91', 'mozilla-esr91',
'autoland', 'autoland',
'firefox-releases', 'firefox-releases',
'comm-central', 'comm-central',
'comm-esr78',
'comm-esr91', 'comm-esr91',
'comm-releases', 'comm-releases',
'fenix', 'fenix',

Просмотреть файл

@ -17,7 +17,6 @@ const GROUP_ORDER = [
'release-stabilization', 'release-stabilization',
'project repositories', 'project repositories',
'comm-repositories', 'comm-repositories',
'qa automation tests',
'ci', 'ci',
'servo', 'servo',
'mobile', 'mobile',
@ -27,7 +26,6 @@ const GROUP_ORDER = [
const DEV_GROUP_ORDER = { const DEV_GROUP_ORDER = {
'mozilla-central': 1, 'mozilla-central': 1,
'mozilla-inbound': 2,
autoland: 3, autoland: 3,
try: 4, try: 4,
}; };

Просмотреть файл

@ -122,10 +122,6 @@ export default class CompareSelectorView extends React.Component {
(this.state.originalProject === 'try' && (this.state.originalProject === 'try' &&
this.state.newProject === 'mozilla-central'); this.state.newProject === 'mozilla-central');
const filteredProjects = projects.filter(
(project) => project.name !== 'mozilla-inbound',
);
return ( return (
<Container fluid className="my-5 pt-5 max-width-default"> <Container fluid className="my-5 pt-5 max-width-default">
<ErrorBoundary <ErrorBoundary
@ -151,7 +147,7 @@ export default class CompareSelectorView extends React.Component {
</Row> </Row>
<Row className="justify-content-center"> <Row className="justify-content-center">
<SelectorCard <SelectorCard
projects={filteredProjects} projects={projects}
updateState={(updates) => this.setState(updates)} updateState={(updates) => this.setState(updates)}
selectedRepo={originalProject} selectedRepo={originalProject}
title="Base" title="Base"
@ -161,7 +157,7 @@ export default class CompareSelectorView extends React.Component {
errorMessages={errorMessages} errorMessages={errorMessages}
/> />
<SelectorCard <SelectorCard
projects={filteredProjects} projects={projects}
updateState={(updates) => this.setState(updates)} updateState={(updates) => this.setState(updates)}
selectedRepo={newProject} selectedRepo={newProject}
title="New" title="New"

Просмотреть файл

@ -482,10 +482,7 @@ export default class TestDataModal extends React.Component {
{ {
options: projectOptions options: projectOptions
.sort() .sort()
.filter( .filter((item) => !pinnedProjects.includes(item)),
(item) =>
!pinnedProjects.includes(item) && item !== 'mozilla-inbound',
),
selectedItem: repositoryName.name || '', selectedItem: repositoryName.name || '',
pinnedProjects: pinnedProjects.filter((item) => pinnedProjects: pinnedProjects.filter((item) =>
projectOptions.includes(item), projectOptions.includes(item),