Esempio n. 1
0
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Constants for `gcloud tasks` commands."""

from googlecloudsdk.api_lib.app import region_util

LOCATIONS_COLLECTION = 'cloudtasks.projects.locations'
QUEUES_COLLECTION = 'cloudtasks.projects.locations.queues'
TASKS_COLLECTION = 'cloudtasks.projects.locations.queues.tasks'

# TODO(b/33038795): App Engine apps are currently being created with
# multi-regional locations. Remove this map when this is no longer the case.
CLOUD_MULTIREGION_TO_REGION_MAP = {
    'us-central': 'us-central1',
    'europe-west': 'europe-west1',
    'asia-northeast': 'asia-northeast1',
}
VALID_REGIONS = [
    region_util.Region('us-central1', True, True),
    region_util.Region('europe-west1', True, True),
    region_util.Region('asia-northeast1', True, True)
]

PULL_QUEUE = 'pull'
APP_ENGINE_QUEUE = 'app-engine'
VALID_QUEUE_TYPES = [PULL_QUEUE, APP_ENGINE_QUEUE]

APP_ENGINE_ROUTING_KEYS = ['service', 'version', 'instance']
Esempio n. 2
0
      props.append(header_type.AdditionalProperty(key=key, value=value))
    return header_type(additionalProperties=props)
  return HeaderProcessor


_MORE_REGIONS_AVAILABLE_WARNING = """\
The regions listed here are only those in which the Cloud Scheduler API is
available. To see full list of App Engine regions available,
create an app using the following command:

    $ gcloud app create
"""


VALID_REGIONS = [
    region_util.Region('us-central', True, True),
    region_util.Region('europe-west', True, True),
]


class AppLocationResolver(object):
  """Callable that resolves and caches the app location for the project.

  The "fallback" for arg marshalling gets used multiple times in the course of
  YAML command translation. This prevents multiple API roundtrips without making
  that class stateful.
  """

  def __init__(self):
    self.location = None
Esempio n. 3
0
            props.append(header_type.AdditionalProperty(key=key, value=value))
        return header_type(additionalProperties=props)

    return HeaderProcessor


_MORE_REGIONS_AVAILABLE_WARNING = """\
The regions listed here are only those in which the Cloud Scheduler API is
available. To see full list of App Engine regions available,
create an app using the following command:

    $ gcloud app create
"""

VALID_REGIONS = [
    region_util.Region('us-central1', True, True),
]


class AppLocationResolver(object):
    """Callable that resolves and caches the app location for the project.

  The "fallback" for arg marshalling gets used multiple times in the course of
  YAML command translation. This prevents multiple API roundtrips without making
  that class stateful.
  """
    def __init__(self):
        self.location = None

    def __call__(self):
        if self.location is None: