1
0
mirror of synced 2025-12-19 18:10:59 -05:00

Enterprise release step bug fixes (#38892)

This commit is contained in:
Rachael Sewell
2023-07-11 09:56:58 -07:00
committed by GitHub
parent 6d607cbe41
commit 6e7b975354
3 changed files with 17 additions and 13 deletions

View File

@@ -354,7 +354,7 @@ export async function convertVersionsToFrontmatter(versions) {
// This creates an array of the applicable releases in the same
// order as the available releases array. This is used to track when
// a release is no longer supported.
const i = docsVersion.releases.sort().indexOf(docsVersion.currentRelease)
const i = docsVersion.releases.indexOf(docsVersion.currentRelease)
if (!numberedReleases[docsVersion.shortName]) {
const availableReleases = Array(docsVersion.releases.length).fill(undefined)
availableReleases[i] = docsVersion.currentRelease
@@ -384,12 +384,12 @@ export async function convertVersionsToFrontmatter(versions) {
} else {
const semVer = []
if (!availableReleases[availableReleases.length - 1]) {
const endVersion = availableReleases.filter(Boolean).pop()
semVer.push(`<=${endVersion}`)
const startVersion = availableReleases.filter(Boolean).pop()
semVer.push(`>=${startVersion}`)
}
if (!availableReleases[0]) {
const startVersion = availableReleases.filter(Boolean).shift()
semVer.push(`>=${startVersion}`)
const endVersion = availableReleases.filter(Boolean).shift()
semVer.push(`<=${endVersion}`)
}
frontmatterVersions[key] = semVer.join(' ')
}

View File

@@ -12,15 +12,12 @@ describe('frontmatter versions are generated correctly from automated data', ()
version !== `enterprise-server@${supported[2]}`,
)
const expectedEneterpriseServerVersions = fromVersions
const expectedEnterpriseServerVersions = fromVersions
.map(
(version) =>
version.includes('enterprise-server@') && version.replace('enterprise-server@', ''),
)
.filter(Boolean)
const expectedEnterpriseServerVersions = expectedEneterpriseServerVersions
.sort()
.map((version) => `=${version}`)
.join(' || ')
@@ -41,7 +38,7 @@ describe('frontmatter versions are generated correctly from automated data', ()
!(version.currentRelease === version.latestRelease && version.hasNumberedReleases),
)
.map((version) => version.version)
const nextLatestRelease = [...supported].sort()[supported.length - 2]
const nextLatestRelease = supported[1]
const expectedVersions = {
fpt: '*',
ghae: '*',
@@ -53,12 +50,12 @@ describe('frontmatter versions are generated correctly from automated data', ()
})
test('greater than the oldest enterprise server version', async () => {
const oldestRelease = [...supported].sort()[0]
const oldestRelease = supported[supported.length - 1]
const fromVersions = Object.values(allVersions)
.filter((version) => !(version.version === `enterprise-server@${oldestRelease}`))
.map((version) => version.version)
const secondOldestRelease = [...supported].sort()[1]
const secondOldestRelease = supported[supported.length - 2]
const expectedVersions = {
fpt: '*',
ghae: '*',

View File

@@ -19,10 +19,18 @@ import { mkdirp } from 'mkdirp'
import { deprecated, supported } from '../../../lib/enterprise-server-releases.js'
const [currentReleaseNumber, previousReleaseNumber] = supported
const pipelines = JSON.parse(await readFile('src/automated-pipelines/lib/config.json'))[
'automation-pipelines'
]
await updateAutomatedConfigFiles(pipelines, supported, deprecated)
await cp(
`data/graphql/ghes-${previousReleaseNumber}`,
`data/graphql/ghes-${currentReleaseNumber}`,
{
recursive: true,
}
)
// The allVersions object uses the 'api-versions' data stored in the
// src/rest/lib/config.json file. We want to update 'api-versions'
@@ -132,7 +140,6 @@ for (const directory of addRelNoteDirs) {
// If the config file for a pipeline includes `api-versions` update that list
// based on the supported and deprecated releases.
async function updateAutomatedConfigFiles(pipelines, supported, deprecated) {
const [currentReleaseNumber, previousReleaseNumber] = supported
for (const pipeline of pipelines) {
const configFilepath = `src/${pipeline}/lib/config.json`
const configData = JSON.parse(await readFile(configFilepath))