public constructor()

in projenrc/upgrade-dependencies.ts [5:49]


  public constructor(project: javascript.NodeProject) {
    super(project, 'jsii-deps-upgrades');

    const branches = [
      'main',
      ...Object.entries(SUPPORT_POLICY.maintenance).flatMap(([version, until]) => {
        if (Date.now() > until.getTime()) {
          return [];
        }
        return [`maintenance/v${version}`];
      }),
    ];

    const upgrades = new javascript.UpgradeDependencies(project, {
      exclude: ['jsii', 'typescript'],
      workflowOptions: {
        branches,
        labels: ['auto-approve'],
      },
    });

    for (const upgradeWorkflow of upgrades.workflows) {
      if (upgradeWorkflow.name.startsWith('upgrade-maintenance-')) {
        upgradeWorkflow.file?.patch(
          JsonPatch.add('/jobs/upgrade/steps/3', {
            name: 'Back-port projenrc changes from main',
            env: { CI: 'false' },
            run: 'git fetch origin main && git checkout FETCH_HEAD -- README.md && yarn projen',
          }),
        );
      }
    }

    // Upgrade jsii & typescript as patch only
    new javascript.UpgradeDependencies(project, {
      taskName: 'upgrade-jsii',
      include: ['jsii', 'typescript'],
      target: 'patch',
      pullRequestTitle: 'upgrade jsii & typescript',
      workflowOptions: {
        branches,
        labels: ['auto-approve'],
      },
    });
  }