Skip to content
Snippets Groups Projects
Select Git revision
  • aad03f71eac123bdca2c03aa4b3aa7e364492dba
  • master default protected
  • spilo-wale-removal
  • dependabot/go_modules/golang.org/x/oauth2-0.27.0
  • bug-upgrade
  • gh-pages
  • patroni-4-integration
  • remove-zappr
  • ignore-auto-upgrade
  • arm-pooler
  • update-go-and-deps
  • pluralsh-liveness-probe
  • silenium-dev-master
  • bump-v1.9.1
  • enable-query-logging
  • bump-v1.7.1
  • resize-mixed-mode
  • instance-annotation
  • bump-v1.8.2
  • clone-bucket-prefix
  • bump-v1.8.1
  • v1.14.0
  • v1.13.0
  • v1.12.2
  • v1.12.1
  • v1.12.0
  • v1.11.0
  • v1.10.1
  • v1.10.0
  • v1.9.0
  • v1.8.2
  • v1.8.1
  • v1.8.0
  • v1.7.1
  • v1.7.0
  • v1.6.3
  • v1.6.2
  • v1.6.1
  • v1.6.0
  • v1.5.0
  • v1.4.0
41 results

administrator.md

Blame
  • status-checks.ts 2.04 KiB
    import { RenovateConfig } from '../../config';
    import { logger } from '../../logger';
    import { platform } from '../../platform';
    import { BranchStatus } from '../../types';
    
    async function setStatusCheck(
      branchName: string,
      context: string,
      description: string,
      state: BranchStatus,
      url: string
    ): Promise<void> {
      const existingState = await platform.getBranchStatusCheck(
        branchName,
        context
      );
      // Check if state needs setting
      if (existingState === state) {
        logger.debug(`Status check ${context} is already up-to-date`);
      } else {
        logger.debug(`Updating ${context} status check state to ${state}`);
        await platform.setBranchStatus({
          branchName,
          context,
          description,
          state,
          url,
        });
      }
    }
    
    export type StabilityConfig = RenovateConfig & {
      stabilityStatus?: BranchStatus;
      branchName: string;
    };
    
    export async function setStability(config: StabilityConfig): Promise<void> {
      if (!config.stabilityStatus) {
        return;
      }
      const context = `renovate/stability-days`;
      const description =
        config.stabilityStatus === BranchStatus.green
          ? 'Updates have met stability days requirement'
          : 'Updates have not met stability days requirement';
      await setStatusCheck(
        config.branchName,
        context,
        description,
        config.stabilityStatus,
        config.productLinks.documentation
      );
    }
    
    export type UnpublishableConfig = RenovateConfig & {
      unpublishSafe?: boolean;
      canBeUnpublished?: boolean;
      branchName: string;
    };
    
    export async function setUnpublishable(
      config: UnpublishableConfig
    ): Promise<void> {
      if (!config.unpublishSafe) {
        return;
      }
      const context = `renovate/unpublish-safe`;
      // Set canBeUnpublished status check
      const state = config.canBeUnpublished
        ? BranchStatus.yellow
        : BranchStatus.green;
      const description = config.canBeUnpublished
        ? 'Packages < 24 hours old can be unpublished'
        : 'Packages cannot be unpublished';
      await setStatusCheck(
        config.branchName,
        context,
        description,
        state,
        config.productLinks.docs
      );
    }