Пример #1
0
    def get_status(self):
        is_db_up = True
        try:
            projects_service.get_open_status()
        except:
            is_db_up = False

        is_kv_up = True
        try:
            store = redis.StrictRedis(
                host=config.KEY_VALUE_STORE["host"],
                port=config.KEY_VALUE_STORE["port"],
                db=config.AUTH_TOKEN_BLACKLIST_KV_INDEX,
                decode_responses=True,
            )
            store.get("test")
        except redis.ConnectionError:
            is_kv_up = False

        is_es_up = True
        try:
            requests.get("http://{host}:{port}".format(
                host=config.EVENT_STREAM_HOST, port=config.EVENT_STREAM_PORT))
        except Exception:
            is_es_up = False

        version = __version__

        api_name = app.config["APP_NAME"]

        return (api_name, version, is_db_up, is_kv_up, is_es_up)
Пример #2
0
    def get(self):
        is_db_up = True
        try:
            projects_service.get_open_status()
        except:
            is_db_up = False

        is_kv_up = True
        try:
            store = redis.StrictRedis(host=config.KEY_VALUE_STORE["host"],
                                      port=config.KEY_VALUE_STORE["port"],
                                      db=config.AUTH_TOKEN_BLACKLIST_KV_INDEX,
                                      decode_responses=True)
            store.get(None)
        except redis.ConnectionError:
            is_kv_up = False

        is_es_up = True
        try:
            requests.get("http://localhost:%s" % config.EVENT_STREAM_PORT)
        except:
            is_es_up = False

        return {
            "api": app.config["APP_NAME"],
            "version": __version__,
            "database-up": is_db_up,
            "key-value-store-up": is_kv_up,
            "event-stream-up": is_es_up
        }
Пример #3
0
def init_data():
    projects_service.get_open_status()
    projects_service.get_closed_status()
    print("Project status initialized.")

    assets_service.get_or_create_type("Characters")
    assets_service.get_or_create_type("Props")
    assets_service.get_or_create_type("Environment")
    assets_service.get_or_create_type("FX")
    assets_service.get_or_create_type("Camera")
    print("Asset types initialized.")

    shots_service.get_episode_type()
    shots_service.get_sequence_type()
    shots_service.get_shot_type()
    print("Shot types initialized.")

    modeling = tasks_service.get_or_create_department("Modeling")
    animation = tasks_service.get_or_create_department("Animation")
    fx = tasks_service.get_or_create_department("FX")
    compositing = tasks_service.get_or_create_department("Compositing")
    concept = tasks_service.get_or_create_department("Concept")
    layout = tasks_service.get_or_create_department("Layout")

    tasks_service.get_or_create_task_type(concept, "Concept", "#8D6E63", 1)
    tasks_service.get_or_create_task_type(modeling, "Texture", "#64B5F6", 2)
    tasks_service.get_or_create_task_type(modeling, "Modeling", "#78909C", 3)
    tasks_service.get_or_create_task_type(animation, "Setup", "#9CCC65", 4)
    tasks_service.get_or_create_task_type(concept, "Storyboard", "#43A047", 1,
                                          True)
    tasks_service.get_or_create_task_type(layout, "Layout", "#7CB342", 2, True)
    tasks_service.get_or_create_task_type(animation, "Animation", "#009688", 3,
                                          True)
    tasks_service.get_or_create_task_type(compositing, "Lighting", "#F9A825",
                                          4, True)
    tasks_service.get_or_create_task_type(fx, "FX", "#26C6DA", 5, True)
    tasks_service.get_or_create_task_type(compositing, "Render", "#F06292", 6,
                                          True)
    tasks_service.get_or_create_task_type(compositing, "Compositing",
                                          "#ff5252", 7, True)
    print("Task types initialized.")

    tasks_service.get_or_create_status("Todo", "todo", "#f5f5f5")
    tasks_service.get_or_create_status("Work In Progress", "wip", "#3273dc")
    tasks_service.get_or_create_status("Waiting For Approval",
                                       "wfa",
                                       "#ab26ff",
                                       is_reviewable=True)
    tasks_service.get_or_create_status("Retake",
                                       "retake",
                                       "#ff3860",
                                       is_reviewable=True)
    tasks_service.get_or_create_status("Done", "done", "#22d160", is_done=True)
    print("Task status initialized.")
Пример #4
0
    def build_query(self):
        Sequence = aliased(Entity, name="sequence")
        Episode = aliased(Entity, name="episode")
        open_status = projects_service.get_open_status()

        query = self.model.query.order_by(Project.name, TaskType.name,
                                          Task.name)
        query = query.join(Project)
        query = query.join(TaskType)
        query = query.join(TaskStatus)
        query = query.join(Entity, Task.entity_id == Entity.id)
        query = query.join(EntityType)
        query = query \
            .outerjoin(Person, Task.assigner_id == Person.id) \
            .outerjoin(Sequence, Sequence.id == Entity.parent_id) \
            .outerjoin(Episode, Episode.id == Sequence.parent_id)
        query = query.add_columns(
            Project.name,
            TaskType.name,
            TaskStatus.name,
            Episode.name,
            Sequence.name,
            EntityType.name,
            Entity.name,
            Person.first_name,
            Person.last_name,
        )
        query = query.filter(Project.project_status_id == open_status["id"])
        query = query.order_by(
            Project.name,
            TaskType.name,
            Episode.name,
            Sequence.name,
            EntityType.name,
            Entity.name,
        )

        return query
Пример #5
0
def init_data():
    """
    Put the minimum required data into the database to start with it.
    """
    projects_service.get_open_status()
    projects_service.get_closed_status()
    print("Project status initialized.")

    assets_service.get_or_create_asset_type("Characters")
    assets_service.get_or_create_asset_type("Props")
    assets_service.get_or_create_asset_type("Environment")
    assets_service.get_or_create_asset_type("FX")
    print("Asset types initialized.")

    shots_service.get_episode_type()
    shots_service.get_sequence_type()
    shots_service.get_shot_type()
    print("Shot types initialized.")

    modeling = tasks_service.get_or_create_department("Modeling")
    animation = tasks_service.get_or_create_department("Animation")
    fx = tasks_service.get_or_create_department("FX")
    compositing = tasks_service.get_or_create_department("Compositing")
    concept = tasks_service.get_or_create_department("Concept")
    layout = tasks_service.get_or_create_department("Layout")

    tasks_service.get_or_create_task_type(concept, "Concept", "#8D6E63", 1)
    tasks_service.get_or_create_task_type(modeling, "Modeling", "#78909C", 2)
    tasks_service.get_or_create_task_type(modeling, "Shading", "#64B5F6", 3)
    tasks_service.get_or_create_task_type(animation, "Rigging", "#9CCC65", 4)

    tasks_service.get_or_create_task_type(
        concept,
        "Storyboard",
        "#43A047",
        priority=1,
        for_shots=True,
        for_entity="Shot",
    )
    tasks_service.get_or_create_task_type(
        layout,
        "Layout",
        "#7CB342",
        priority=2,
        for_shots=True,
        for_entity="Shot",
    )
    tasks_service.get_or_create_task_type(
        animation,
        "Animation",
        "#009688",
        priority=3,
        for_shots=True,
        for_entity="Shot",
    )
    tasks_service.get_or_create_task_type(
        compositing,
        "Lighting",
        "#F9A825",
        priority=4,
        for_shots=True,
        for_entity="Shot",
    )
    tasks_service.get_or_create_task_type(fx,
                                          "FX",
                                          "#26C6DA",
                                          priority=5,
                                          for_shots=True,
                                          for_entity="Shot")
    tasks_service.get_or_create_task_type(
        compositing,
        "Rendering",
        "#F06292",
        priority=6,
        for_shots=True,
        for_entity="Shot",
    )
    tasks_service.get_or_create_task_type(
        compositing,
        "Compositing",
        "#ff5252",
        priority=7,
        for_shots=True,
        for_entity="Shot",
    )
    print("Task types initialized.")

    tasks_service.get_or_create_status("Todo", "todo", "#f5f5f5")
    tasks_service.get_or_create_status("Work In Progress", "wip", "#3273dc")
    tasks_service.get_or_create_status("Waiting For Approval", "wfa",
                                       "#ab26ff")
    tasks_service.get_or_create_status("Retake",
                                       "retake",
                                       "#ff3860",
                                       is_retake=True)
    tasks_service.get_or_create_status("Done", "done", "#22d160", is_done=True)
    print("Task status initialized.")