# cpl.environment

## cpl.environment.application_environment

class `cpl.environment.application_environment.``ApplicationEnvironment`(name: cpl.environment.environment_name_enum.EnvironmentNameEnum = <EnvironmentNameEnum.production: 'production'>)

  Bases: `cpl.environment.application_environment_abc.ApplicationEnvironmentABC`

  property `application_name`
  property `customer`
  property `date_time_now`
  property `end_time`
  property `environment_name`
  property `host_name`
  property `runtime_directory`
  `set_runtime_directory`(runtime_directory: str)

    Sets the current runtime directory :param runtime_directory: :return:

  `set_working_directory`(working_directory: str)

    Sets the current working directory :param working_directory: :return:

  property `start_time`
  property `working_directory`

## cpl.environment.application_environment_abc

class `cpl.environment.application_environment_abc.``ApplicationEnvironmentABC`

  Bases: `abc.ABC`

  abstract property `application_name`
  abstract property `customer`
  abstract property `date_time_now`
  abstract property `end_time`
  abstract property `environment_name`
  abstract property `host_name`
  abstract property `runtime_directory`
  abstract `set_runtime_directory`(runtime_directory: str)

    Sets the current runtime directory :param runtime_directory: :return:

  abstract `set_working_directory`(working_directory: str)

    Sets the current working directory :param working_directory: :return:

  abstract property `start_time`
  abstract property `working_directory`

## cpl.environment.environment_name_enum

class `cpl.environment.environment_name_enum.``EnvironmentNameEnum`(value)

  Bases: `enum.Enum`

  An enumeration.

  `development` = 'development'
  `production` = 'production'
  `staging` = 'staging'
  `testing` = 'testing'