Skip to content

Use new cost factor 0.008 for public SaaS projects

Fabio Pitino requested to merge remove-force-cost-factor into master

What does this MR do and why?

Related to #359094 (closed)

In this MR we remove the feature flag ci_minutes_cost_factor_for_all_public_projects and Project#force_cost_factor? method which was forcing the runner cost factor to be 0.008 when the runner cost factor (from the database) returned 0.

We also updated the public project cost factor in the database for all SaaS shared runners. With the settings change we now have:

  • all public projects using Linux shared runners will use cost factor 0.008.
  • all private projects using Linux shared runners will use cost factor 1.0.
  • cost factor for projects using other types of shared runners remains unchanged.

Database migrations

rails db:migrate

main: == 20220610140605 ChangePublicProjectsCostFactor: migrating ===================
main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].
main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared].
main: == 20220610140605 ChangePublicProjectsCostFactor: migrated (0.0002s) ==========

ci: == 20220610140605 ChangePublicProjectsCostFactor: migrating ===================
ci: == 20220610140605 ChangePublicProjectsCostFactor: migrated (0.0012s) ==========
rails db:rollbackmain db:rollback:ci

main: == 20220610140605 ChangePublicProjectsCostFactor: reverting ===================
main: -- The migration is skipped since it modifies the schemas: [:gitlab_ci].
main: -- This database can only apply migrations in one of the following schemas: [:gitlab_main, :gitlab_shared].
main: == 20220610140605 ChangePublicProjectsCostFactor: reverted (0.0002s) ==========

ci: == 20220610140605 ChangePublicProjectsCostFactor: reverting ===================
ci: == 20220610140605 ChangePublicProjectsCostFactor: reverted (0.0018s) ==========

Query plans: https://console.postgres.ai/gitlab/gitlab-production-tunnel-pg12/sessions/10537/commands/37854

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Fabio Pitino

Merge request reports