in Tasks/GooglePlayReleaseV4/modules/googleutil.ts [72:119]
export async function updateTrack(
edits: pub3.Resource$Edits,
packageName: string,
track: string,
versionCodes: number | number[],
userFraction: number,
updatePriority: number,
releaseNotes?: pub3.Schema$LocalizedText[],
releaseName?: string
): Promise<pub3.Schema$Track> {
tl.debug('Updating track');
const versionCodesArray: number[] = (Array.isArray(versionCodes) ? versionCodes : [versionCodes]);
const release: pub3.Schema$TrackRelease = {
versionCodes: versionCodesArray.map((versionCode) => versionCode.toString()),
inAppUpdatePriority: updatePriority
};
if (releaseName && releaseName.length > 0) {
tl.debug('Add release name: ' + releaseName);
release.name = releaseName;
}
if (releaseNotes && releaseNotes.length > 0) {
tl.debug('Attaching release notes to the update');
release.releaseNotes = releaseNotes;
}
if (userFraction < 1.0) {
release.userFraction = userFraction;
release.status = 'inProgress';
} else {
tl.debug('User fraction is more than 100% marking rollout "completed"');
release.status = 'completed';
}
const requestParameters: pub3.Params$Resource$Edits$Tracks$Update = {
packageName: packageName,
track: track,
requestBody: {
track,
releases: [release]
}
};
tl.debug('Additional Parameters: ' + JSON.stringify(requestParameters));
const updatedTrack = await edits.tracks.update(requestParameters);
return updatedTrack.data;
}