コード例 #1
0
ファイル: release_type.py プロジェクト: xutaoding/bmp
    def get(self, begin_time, end_time):
        result = {}
        release = pd.read_json(json.dumps(Release.between(begin_time, end_time))).set_index("release_time")

        for name, g in release.groupby("release_type"):
            result[name] = {}
            ids = g.resample("m", how="count").id
            for ix in ids.index:
                date = time.format(ix.to_datetime(), "%Y-%m-%d")
                result[name][date] = ids[ix]

        return self.succ(result)
コード例 #2
0
ファイル: release_type.py プロジェクト: cash2one/bmp
    def get(self, begin_time, end_time):
        result = {}
        release = pd.read_json(
            json.dumps(Release.between(begin_time, end_time))) \
            .set_index("release_time")

        for name, g in release.groupby("release_type"):
            result[name] = {}
            ids = g.resample("m", how="count").id
            for ix in ids.index:
                date = time.format(ix.to_datetime(), "%Y-%m-%d")
                result[name][date] = ids[ix]

        return self.succ(result)
コード例 #3
0
    def get(self, begin_time, end_time):
        result = {}
        for release in Release.between(
                datetime.strptime(begin_time, "%Y-%m-%d"),
                datetime.strptime(end_time, "%Y-%m-%d")):

            svc_name = release["service"]["name"]
            svc_type = release["service"]["type"]
            if not result.__contains__(svc_name):
                result[svc_name] = {}
            if not result[svc_name].__contains__(svc_type):
                result[svc_name][svc_type] = 1
            else:
                result[svc_name][svc_type] += 1

        return self.succ(result)
コード例 #4
0
ファイル: release_status.py プロジェクト: xutaoding/bmp
    def get(self, begin_time, end_time):
        result = {}
        opts, svc_names = set(), set()
        for release in Release.between(
            datetime.strptime(begin_time, "%Y-%m-%d"), datetime.strptime(end_time, "%Y-%m-%d")
        ):
            proj = release["project"]
            svc_name = release["service"]["name"]
            svc_type = release["service"]["type"]
            is_pass, options = self.check_approval(release["approvals"])
            if is_pass and len(release["approvals"]) < 3:
                continue
            svc_names.add(svc_name)

            if not result.__contains__(proj):
                result[proj] = {RELEASE.FAIL: {}, RELEASE.PASS: {}, RELEASE.OPTIONS: {}}
            if not result[proj][RELEASE.PASS].__contains__(svc_name):
                result[proj][RELEASE.PASS][svc_name] = 0
                result[proj][RELEASE.FAIL][svc_name] = 0
            if is_pass:
                result[proj][RELEASE.PASS][svc_name] += 1
            else:
                result[proj][RELEASE.FAIL][svc_name] += 1
                for opt in options.split(","):
                    if not opt:
                        continue
                    opts.add(opt)
                    if not result[proj][RELEASE.OPTIONS].__contains__(opt):
                        result[proj][RELEASE.OPTIONS][opt] = 0
                    result[proj][RELEASE.OPTIONS][opt] += 1

        for proj in result.values():
            for opt in opts:
                if not proj[RELEASE.OPTIONS].__contains__(opt):
                    proj[RELEASE.OPTIONS][opt] = 0
            for svc_name in svc_names:
                if not proj[RELEASE.PASS].__contains__(svc_name):
                    proj[RELEASE.PASS][svc_name] = 0
                    proj[RELEASE.FAIL][svc_name] = 0

        return self.succ(result)
コード例 #5
0
ファイル: release_status.py プロジェクト: cash2one/bmp
    def get(self, begin_time, end_time):
        result = {}
        opts, svc_names = set(), set()
        for release in Release.between(
                datetime.strptime(begin_time, "%Y-%m-%d"),
                datetime.strptime(end_time, "%Y-%m-%d")):
            proj = release["project"]
            svc_name = release["service"]["name"]
            svc_type = release["service"]["type"]
            is_pass, options = self.check_approval(release["approvals"])
            if is_pass and len(release["approvals"]) < 3:
                continue
            svc_names.add(svc_name)

            if not result.__contains__(proj):
                result[proj] = {RELEASE.FAIL: {}, RELEASE.PASS: {}, RELEASE.OPTIONS: {}}
            if not result[proj][RELEASE.PASS].__contains__(svc_name):
                result[proj][RELEASE.PASS][svc_name] = 0
                result[proj][RELEASE.FAIL][svc_name] = 0
            if is_pass:
                result[proj][RELEASE.PASS][svc_name] += 1
            else:
                result[proj][RELEASE.FAIL][svc_name] += 1
                for opt in options.split(","):
                    if not opt: continue
                    opts.add(opt)
                    if not result[proj][RELEASE.OPTIONS].__contains__(opt):
                        result[proj][RELEASE.OPTIONS][opt] = 0
                    result[proj][RELEASE.OPTIONS][opt] += 1

        for proj in result.values():
            for opt in opts:
                if not proj[RELEASE.OPTIONS].__contains__(opt):
                    proj[RELEASE.OPTIONS][opt] = 0
            for svc_name in svc_names:
                if not proj[RELEASE.PASS].__contains__(svc_name):
                    proj[RELEASE.PASS][svc_name] = 0
                    proj[RELEASE.FAIL][svc_name] = 0

        return self.succ(result)