mirror of
https://github.com/hanzoai/firebase-js-sdk.git
synced 2026-09-24 16:59:10 +00:00
* enable changeset * Create release pull request * change env variable name * use the correct secret in GHA * make firebase a devDependency in integration test projects * initial changeset release rewrite * clean up imports in cli.ts * save progress * implement canary release * update changesets to the latest * ignore integration test projects * save updates * update ignore list * stream changeset output * validate version for staging releases * fix bug * add option * skip private packages * remove unused things * update release script * fix type errors * remove commented code * fix types * add Changeset check * compare to master
64 lines
1.8 KiB
TypeScript
64 lines
1.8 KiB
TypeScript
/**
|
|
* @license
|
|
* Copyright 2020 Google LLC
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
import { spawn } from 'child-process-promise';
|
|
import { projectRoot as root } from '../utils';
|
|
import { getAllPackages, mapPkgNameToPkgJson } from './utils/workspace';
|
|
|
|
export async function bumpVersionForStaging(): Promise<
|
|
Map<string, [string, string]>
|
|
> {
|
|
const packages = await getAllPackages();
|
|
const originalVersions = new Map<string, string>();
|
|
|
|
const pkgJsons = await Promise.all(
|
|
packages.map(pkg => mapPkgNameToPkgJson(pkg))
|
|
);
|
|
for (const { name, version } of pkgJsons) {
|
|
originalVersions.set(name, version);
|
|
}
|
|
|
|
await spawn('yarn', ['changeset', 'version', '--snapshot'], {
|
|
cwd: root,
|
|
stdio: 'inherit'
|
|
});
|
|
|
|
const updatedPkgJsons: {
|
|
name: string;
|
|
version: string;
|
|
private: boolean;
|
|
}[] = await Promise.all(packages.map(pkg => mapPkgNameToPkgJson(pkg)));
|
|
const updatedVersions = new Map<string, [string, string]>();
|
|
|
|
for (const {
|
|
name,
|
|
version: updatedVersion,
|
|
private: isPrivate
|
|
} of updatedPkgJsons) {
|
|
if (isPrivate) {
|
|
continue;
|
|
}
|
|
|
|
const originalVersion = originalVersions.get(name)!;
|
|
if (updatedVersion && originalVersion !== updatedVersion) {
|
|
updatedVersions.set(name, [originalVersion, updatedVersion]);
|
|
}
|
|
}
|
|
|
|
return updatedVersions;
|
|
}
|