Source code for action_updater.main.updaters.setenv.update

__author__ = "Vanessa Sochat"
__copyright__ = "Copyright 2022, Vanessa Sochat"
__license__ = "MPL 2.0"

from action_updater.main.updater import UpdaterBase
from action_updater.main.updaters.setoutput.update import update_lines


[docs]class SetenvUpdater(UpdaterBase): name = "set-env" description = "update deprecated set-env commands"
[docs] def detect(self, action): """ Detect changes in an action, old set-env. """ # Set the count to 0 self.count = 0 # No point if we don't have jobs! if not action.steps: return False # For each job, look for steps->updater versions for step in action.steps: # We are primarily interested in uses if "run" not in step: continue # Update step run lines updated_lines = update_lines(step["run"], "set-env", "$GITHUB_ENV") # Keep track of change counts if updated_lines != step["run"]: self.count += 1 step["run"] = updated_lines return self.count != 0