You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@devlake.apache.org by kl...@apache.org on 2024/08/13 08:13:27 UTC

(incubator-devlake) branch kw-7852-components-field-length updated (0e6436a67 -> 9c848096f)

This is an automated email from the ASF dual-hosted git repository.

klesh pushed a change to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git


 discard 0e6436a67 fix: change jira issue component field to text type
    omit 5dd8e0fe4 fix: gitub deployment unit test
    omit 4e6490168 fix: github issues not being updated
    omit 0c36b4c8d docs: add comments
    omit 70a468bdb refactor: update github account/release extractor to adopt single record extraction
    omit f0601e571 refactor: update github deployment extractor to extract single records
    omit 85098ccb1 refactor: update github issue extractor to extract single record
    omit 799a4382a refactor: update github job extractor for single record structure
    omit 88ac8eb6f fix: pull requests not being updated
    omit 5266dbeff refactor: remove extraction logic from github graphql collector
     add 938e22c87 fix unexpected incremental mode when re-transformating data (#7834)
     add 2566dd3b2 fix: not set page and pageSize for pipelines (#7830)
     add 2d9106c03 fix: unnecessary refresh when changing url (#7838)
     add ff673345e fix(dashboard): update dashboard, fix wrong sql (#7843)
     add c64bd2d29 fix(github): ignore bot account (#7845)
     add 0a4f7ebc0 feat: improve some description for onboard (#7840)
     add 8f80ea3c2 feat: update dashboard tags (#7848)
     add 3da686d26 fix(dora): add more log in task ConnectIncidentToDeployment (#7854)
     add 6cbf8557e Add more log for dora task ConnectIncidentToDeployment (#7856)
     add 45a3c97df Fix errors in dora plugin (#7858)
     add 265964924 fix(gitextractor): update cli args when fetching remote repos (#7853)
     add f17dd68bf refactor(helpers): update "NewSubtaskStateManager" (#7861)
     add 5f8bffbeb fix: adjust Grafana timezone handling for non-UTC databases (#7865)
     add ceec014e8 fix(helpers): fix concurrent map writes (#7869)
     add 9b28c7661 fix(ui): correct documentation urls (#7871)
     add 9f43180be fix: activated date replace started date in sprint (#7874)
     add c50b563ec feat: issue add is_subtask field (#7879)
     new 5a6c3f933 refactor: remove extraction logic from github graphql collector
     new d643a16ba fix: pull requests not being updated
     new ea7a6899f refactor: update github job extractor for single record structure
     new 6128b6872 refactor: update github issue extractor to extract single record
     new 731a1f52f refactor: update github deployment extractor to extract single records
     new 26df5896b refactor: update github account/release extractor to adopt single record extraction
     new 7638cf1d9 docs: add comments
     new d16f143e1 fix: github issues not being updated
     new e4e40bef6 fix: gitub deployment unit test
     new 4eeca4d1f fix: change jira issue component field to text type
     new 372ea3ebe fix: column type should not be parameterized
     new ae6621a2c fix: #7852 sonarqube issues component field data too long
     new 12253ce41 fix: change issue.components to text to avoid data too long error
     new f10bd6a5e doc: fix jira issues component tag
     new 7a300ef44 fix: change bitbucket issue components field to text
     new 7857bd509 fix: change gitee issue components field to text
     new 17cd56e62 fix: change github issue components field to text
     new e006d21b3 fix: change gitlab issue components field to text
     new 9c848096f fix: #7715 Data too long for column 'project_key'

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (0e6436a67)
            \
             N -- N -- N   refs/heads/kw-7852-components-field-length (9c848096f)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 19 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../models/domainlayer/codequality/cq_projects.go  |   2 +-
 backend/core/models/domainlayer/ticket/issue.go    |   6 +-
 ...o_pr.go => 20240813_add_is_subtask_to_issue.go} |  24 ++--
 .../20240813_change_issue_component_type.go}       |   6 +-
 .../20240813_increase_project_key_length.go}       |  16 +--
 backend/core/models/migrationscripts/register.go   |   1 +
 .../pluginhelper/api/collector_state_manager.go    |   2 +-
 .../pluginhelper/api/ds_remote_api_proxy_api.go    |  26 +++--
 .../pluginhelper/api/subtask_state_manager.go      | 105 +++++++++++------
 backend/impls/dalgorm/dalgorm.go                   |   7 +-
 backend/plugins/bitbucket/models/issue.go          |   2 +-
 .../20240813_change_issue_component_type.go}       |   6 +-
 .../bitbucket/models/migrationscripts/register.go  |   1 +
 backend/plugins/dora/impl/impl.go                  |   2 +-
 .../dora/tasks/incident_deploy_connector.go        |  22 +++-
 backend/plugins/gitee/models/issue.go              |   2 +-
 .../20240813_change_issue_component_type.go}       |   6 +-
 .../gitee/models/migrationscripts/register.go      |   1 +
 backend/plugins/gitextractor/impl/impl.go          |   2 +-
 .../plugins/gitextractor/parser/clone_gitcli.go    |   8 +-
 backend/plugins/github/models/issue.go             |   2 +-
 .../20240813_change_issue_component_type.go}       |   6 +-
 .../github/models/migrationscripts/register.go     |   1 +
 backend/plugins/github/tasks/pr_convertor.go       |   4 +-
 backend/plugins/gitlab/models/issue.go             |   2 +-
 .../20240813_change_issue_component_type.go}       |   6 +-
 .../gitlab/models/migrationscripts/register.go     |   1 +
 .../e2e/snapshot_tables/_tool_jira_sprints.csv     |  60 +++++-----
 .../plugins/jira/e2e/snapshot_tables/sprints.csv   |  58 ++++-----
 backend/plugins/jira/e2e/sprint_test.go            | 129 ++++++++++-----------
 backend/plugins/jira/models/issue.go               |   2 +-
 backend/plugins/jira/tasks/apiv2models/sprint.go   |  15 +--
 backend/plugins/jira/tasks/issue_convertor.go      |   1 +
 backend/plugins/jira/tasks/issue_extractor.go      |  18 +--
 .../opsgenie/e2e/snapshot_tables/issues.csv        |   6 +-
 .../pagerduty/e2e/snapshot_tables/issues.csv       |   8 +-
 backend/plugins/sonarqube/api/blueprint_v200.go    |   2 +-
 .../20240813_change_issue_component_type.go}       |   6 +-
 .../20240813_increase_project_key_length.go}       |  16 +--
 .../sonarqube/models/migrationscripts/register.go  |   2 +
 .../plugins/sonarqube/models/sonarqube_issue.go    |   2 +-
 .../plugins/sonarqube/models/sonarqube_project.go  |   2 +-
 .../plugins/sonarqube/tasks/projects_convertor.go  |  12 +-
 .../tapd/e2e/snapshot_tables/issues_story.csv      |  42 +++----
 .../tapd/e2e/snapshot_tables/issues_task.csv       |  32 ++---
 .../teambition/e2e/snapshot_tables/issues.csv      |  46 ++++----
 .../zentao/e2e/snapshot_tables/issues_bug.csv      |  14 +--
 .../zentao/e2e/snapshot_tables/issues_story.csv    |  20 ++--
 .../zentao/e2e/snapshot_tables/issues_task.csv     |   8 +-
 config-ui/src/api/pipeline/index.ts                |   3 +-
 config-ui/src/config/paths.ts                      |  20 +---
 .../components/connection-form/fields/token.tsx    |   4 +-
 .../src/plugins/components/scope-config/index.tsx  |   2 +-
 config-ui/src/release/stable.ts                    |   6 +-
 .../routes/blueprint/connection-detail/index.tsx   |  14 ++-
 .../routes/blueprint/detail/blueprint-detail.tsx   |  21 ++--
 config-ui/src/routes/blueprint/home/index.tsx      |  10 +-
 config-ui/src/routes/onboard/step-1.tsx            |  13 ++-
 config-ui/src/routes/onboard/step-2.tsx            |   9 +-
 config-ui/src/routes/pipeline/components/table.tsx |   8 +-
 config-ui/src/routes/pipeline/pipelines.tsx        |   5 +-
 config-ui/src/routes/project/detail/index.tsx      |  16 ++-
 .../src/routes/project/detail/settings-panel.tsx   |   6 +-
 config-ui/src/routes/project/home/index.tsx        |  13 ++-
 grafana/dashboards/AzureDevOps.json                |   5 +-
 grafana/dashboards/Bamboo.json                     |   2 +-
 grafana/dashboards/BitBucket.json                  |   5 +-
 grafana/dashboards/CircleCI.json                   |   5 +-
 .../dashboards/ComponentAndFileLevelMetrics.json   |   2 +-
 grafana/dashboards/ContributorExperience.json      |   2 +-
 grafana/dashboards/DORA.json                       |   8 +-
 grafana/dashboards/DORAByTeam.json                 |   8 +-
 grafana/dashboards/DORADebug.json                  |   7 +-
 .../dashboards/DORADetails-ChangeFailureRate.json  |   2 +-
 .../DORADetails-DeploymentFrequency.json           |   2 +-
 .../DORADetails-FailedDeploymentRecoveryTime.json  |   2 +-
 .../dashboards/DORADetails-LeadTimeforChanges.json |   2 +-
 .../DORADetails-TimetoRestoreService.json          |   2 +-
 .../DemoAverageRequirementLeadTimeByAssignee.json  |   2 +-
 grafana/dashboards/DemoCommitCountByAuthor.json    |   2 +-
 grafana/dashboards/DemoDetailedBugInfo.json        |   2 +-
 grafana/dashboards/DemoHomepage.json               |   2 +-
 ...moHowFastDoWeRespondToCustomerRequirements.json |   2 +-
 .../DemoIsThisMonthMoreProductiveThanLast.json     |   2 +-
 .../dashboards/DemoWasOurQualityImprovedOrNot.json |   2 +-
 grafana/dashboards/EngineeringOverview.json        |   5 +-
 .../EngineeringThroughputAndCycleTime.json         |   2 +-
 .../EngineeringThroughputAndCycleTimeTeamView.json |   2 +-
 grafana/dashboards/GitHub.json                     |   5 +-
 ...ithubReleaseQualityAndContributionAnalysis.json |   2 +-
 grafana/dashboards/Gitlab.json                     |   5 +-
 grafana/dashboards/Homepage.json                   |   2 +-
 grafana/dashboards/Jenkins.json                    |   5 +-
 grafana/dashboards/Jira.json                       |   2 +-
 grafana/dashboards/Opsgenie.json                   |   2 +-
 grafana/dashboards/PagerDuty.json                  |   5 +-
 grafana/dashboards/Sonarqube.json                  |   5 +-
 grafana/dashboards/TAPD.json                       |   2 +-
 grafana/dashboards/Teambition.json                 |   2 +-
 grafana/dashboards/WeeklyBugRetro.json             |   5 +-
 grafana/dashboards/WeeklyCommunityRetro.json       |   2 +-
 grafana/dashboards/WorkLogs.json                   |   5 +-
 grafana/dashboards/Zentao.json                     |   2 +-
 103 files changed, 579 insertions(+), 469 deletions(-)
 copy backend/core/models/migrationscripts/{20240725_add_is_draft_to_pr.go => 20240813_add_is_subtask_to_issue.go} (68%)
 copy backend/{plugins/jira/models/migrationscripts/20240809_change_issue_component_type.go => core/models/migrationscripts/20240813_change_issue_component_type.go} (88%)
 copy backend/{plugins/jira/models/migrationscripts/20240809_change_issue_component_type.go => core/models/migrationscripts/20240813_increase_project_key_length.go} (69%)
 copy backend/plugins/{jira/models/migrationscripts/20240809_change_issue_component_type.go => bitbucket/models/migrationscripts/20240813_change_issue_component_type.go} (87%)
 copy backend/plugins/{jira/models/migrationscripts/20240809_change_issue_component_type.go => gitee/models/migrationscripts/20240813_change_issue_component_type.go} (88%)
 copy backend/plugins/{jira/models/migrationscripts/20240809_change_issue_component_type.go => github/models/migrationscripts/20240813_change_issue_component_type.go} (87%)
 copy backend/plugins/{jira/models/migrationscripts/20240809_change_issue_component_type.go => gitlab/models/migrationscripts/20240813_change_issue_component_type.go} (87%)
 copy backend/plugins/{jira/models/migrationscripts/20240809_change_issue_component_type.go => sonarqube/models/migrationscripts/20240813_change_issue_component_type.go} (87%)
 copy backend/plugins/{jira/models/migrationscripts/20240809_change_issue_component_type.go => sonarqube/models/migrationscripts/20240813_increase_project_key_length.go} (68%)


(incubator-devlake) 12/19: fix: #7852 sonarqube issues component field data too long

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit ae6621a2c390d435aa029434eae8f9d03176dfe3
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 15:40:32 2024 +0800

    fix: #7852 sonarqube issues component field data too long
---
 ....go => 20240813_change_issue_component_type.go} | 38 ++++++++++++----------
 .../sonarqube/models/migrationscripts/register.go  |  1 +
 .../plugins/sonarqube/models/sonarqube_issue.go    |  2 +-
 3 files changed, 22 insertions(+), 19 deletions(-)

diff --git a/backend/plugins/sonarqube/models/migrationscripts/register.go b/backend/plugins/sonarqube/models/migrationscripts/20240813_change_issue_component_type.go
similarity index 55%
copy from backend/plugins/sonarqube/models/migrationscripts/register.go
copy to backend/plugins/sonarqube/models/migrationscripts/20240813_change_issue_component_type.go
index 3f2181367..eb7e713c8 100644
--- a/backend/plugins/sonarqube/models/migrationscripts/register.go
+++ b/backend/plugins/sonarqube/models/migrationscripts/20240813_change_issue_component_type.go
@@ -17,22 +17,24 @@ limitations under the License.
 
 package migrationscripts
 
-import "github.com/apache/incubator-devlake/core/plugin"
-
-// All return all the migration scripts
-func All() []plugin.MigrationScript {
-	return []plugin.MigrationScript{
-		new(addInitTables),
-		new(modifyCharacterSet),
-		new(expandProjectKey20230206),
-		new(addRawParamTableForScope),
-		new(addScopeConfigIdToProject),
-		new(modifyFileMetricsKeyLength),
-		new(modifyComponentLength),
-		new(addSonarQubeScopeConfig20231214),
-		new(modifyCommitCharacterType),
-		new(modifyCommitCharacterType0508),
-		new(updateSonarQubeScopeConfig20240614),
-		new(modifyNameLength),
-	}
+import (
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
+	"github.com/apache/incubator-devlake/core/plugin"
+)
+
+var _ plugin.MigrationScript = (*changeIssueComponentType)(nil)
+
+type changeIssueComponentType struct{}
+
+func (script *changeIssueComponentType) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("_tool_sonarqube_issues", "components", "text")
+}
+
+func (*changeIssueComponentType) Version() uint64 {
+	return 20240813153541
+}
+
+func (*changeIssueComponentType) Name() string {
+	return "change _tool_sonarqube_issues.components type to text"
 }
diff --git a/backend/plugins/sonarqube/models/migrationscripts/register.go b/backend/plugins/sonarqube/models/migrationscripts/register.go
index 3f2181367..dae45e25c 100644
--- a/backend/plugins/sonarqube/models/migrationscripts/register.go
+++ b/backend/plugins/sonarqube/models/migrationscripts/register.go
@@ -34,5 +34,6 @@ func All() []plugin.MigrationScript {
 		new(modifyCommitCharacterType0508),
 		new(updateSonarQubeScopeConfig20240614),
 		new(modifyNameLength),
+		new(changeIssueComponentType),
 	}
 }
diff --git a/backend/plugins/sonarqube/models/sonarqube_issue.go b/backend/plugins/sonarqube/models/sonarqube_issue.go
index 3bc8a2b13..fefd75721 100644
--- a/backend/plugins/sonarqube/models/sonarqube_issue.go
+++ b/backend/plugins/sonarqube/models/sonarqube_issue.go
@@ -26,7 +26,7 @@ type SonarqubeIssue struct {
 	IssueKey     string `gorm:"primaryKey;type:varchar(100)"`
 	Rule         string `gorm:"type:varchar(255)"`
 	Severity     string `gorm:"type:varchar(100)"`
-	Component    string `gorm:"type:varchar(500)"`
+	Component    string `gorm:"type:text"`
 	ProjectKey   string `gorm:"index;type:varchar(255)"` //domain project key
 	Line         int
 	Status       string `gorm:"type:varchar(20)"`


(incubator-devlake) 08/19: fix: github issues not being updated

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit d16f143e1f7d31d15abaf4aea9995ff68bf17e35
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Wed Aug 7 17:58:07 2024 +0800

    fix: github issues not being updated
---
 .../github_graphql/tasks/issue_collector.go        | 86 ++++++++++++++++++++--
 1 file changed, 78 insertions(+), 8 deletions(-)

diff --git a/backend/plugins/github_graphql/tasks/issue_collector.go b/backend/plugins/github_graphql/tasks/issue_collector.go
index f2d27cc5f..1bdb3d379 100644
--- a/backend/plugins/github_graphql/tasks/issue_collector.go
+++ b/backend/plugins/github_graphql/tasks/issue_collector.go
@@ -19,12 +19,15 @@ package tasks
 
 import (
 	"encoding/json"
+	"reflect"
 	"strings"
 	"time"
 
+	"github.com/apache/incubator-devlake/core/dal"
 	"github.com/apache/incubator-devlake/core/errors"
 	"github.com/apache/incubator-devlake/core/plugin"
-	helper "github.com/apache/incubator-devlake/helpers/pluginhelper/api"
+	"github.com/apache/incubator-devlake/helpers/pluginhelper/api"
+	"github.com/apache/incubator-devlake/plugins/github/models"
 	githubTasks "github.com/apache/incubator-devlake/plugins/github/tasks"
 	"github.com/merico-dev/graphql"
 )
@@ -39,11 +42,20 @@ type GraphqlQueryIssueWrapper struct {
 		IssueList struct {
 			TotalCount graphql.Int
 			Issues     []GraphqlQueryIssue `graphql:"nodes"`
-			PageInfo   *helper.GraphqlQueryPageInfo
+			PageInfo   *api.GraphqlQueryPageInfo
 		} `graphql:"issues(first: $pageSize, after: $skipCursor, orderBy: {field: UPDATED_AT, direction: DESC})"`
 	} `graphql:"repository(owner: $owner, name: $name)"`
 }
 
+type GraphqlQueryIssueDetailWrapper struct {
+	RateLimit struct {
+		Cost int
+	}
+	Repository struct {
+		Issues []GraphqlQueryIssue `graphql:"issue(number: $number)" graphql-extend:"true"`
+	} `graphql:"repository(owner: $owner, name: $name)"`
+}
+
 type GraphqlQueryIssue struct {
 	DatabaseId   int
 	Number       int
@@ -83,7 +95,7 @@ var _ plugin.SubTaskEntryPoint = CollectIssues
 
 func CollectIssues(taskCtx plugin.SubTaskContext) errors.Error {
 	data := taskCtx.GetData().(*githubTasks.GithubTaskData)
-	apiCollector, err := helper.NewStatefulApiCollector(helper.RawDataSubTaskArgs{
+	apiCollector, err := api.NewStatefulApiCollector(api.RawDataSubTaskArgs{
 		Ctx: taskCtx,
 		Params: githubTasks.GithubApiParams{
 			ConnectionId: data.Options.ConnectionId,
@@ -95,10 +107,12 @@ func CollectIssues(taskCtx plugin.SubTaskContext) errors.Error {
 		return err
 	}
 
-	err = apiCollector.InitGraphQLCollector(helper.GraphqlCollectorArgs{
+	// collect new issues since the previous run
+	since := apiCollector.GetSince()
+	err = apiCollector.InitGraphQLCollector(api.GraphqlCollectorArgs{
 		GraphqlClient: data.GraphqlClient,
 		PageSize:      10,
-		BuildQuery: func(reqData *helper.GraphqlRequestData) (interface{}, map[string]interface{}, error) {
+		BuildQuery: func(reqData *api.GraphqlRequestData) (interface{}, map[string]interface{}, error) {
 			query := &GraphqlQueryIssueWrapper{}
 			if reqData == nil {
 				return query, map[string]interface{}{}, nil
@@ -112,7 +126,7 @@ func CollectIssues(taskCtx plugin.SubTaskContext) errors.Error {
 			}
 			return query, variables, nil
 		},
-		GetPageInfo: func(iQuery interface{}, args *helper.GraphqlCollectorArgs) (*helper.GraphqlQueryPageInfo, error) {
+		GetPageInfo: func(iQuery interface{}, args *api.GraphqlCollectorArgs) (*api.GraphqlQueryPageInfo, error) {
 			query := iQuery.(*GraphqlQueryIssueWrapper)
 			return query.Repository.IssueList.PageInfo, nil
 		},
@@ -120,8 +134,8 @@ func CollectIssues(taskCtx plugin.SubTaskContext) errors.Error {
 			query := queryWrapper.(*GraphqlQueryIssueWrapper)
 			issues := query.Repository.IssueList.Issues
 			for _, rawL := range issues {
-				if apiCollector.GetSince() != nil && !apiCollector.GetSince().Before(rawL.UpdatedAt) {
-					return messages, helper.ErrFinishCollect
+				if since != nil && since.After(rawL.UpdatedAt) {
+					return messages, api.ErrFinishCollect
 				}
 				messages = append(messages, errors.Must1(json.Marshal(rawL)))
 			}
@@ -132,5 +146,61 @@ func CollectIssues(taskCtx plugin.SubTaskContext) errors.Error {
 		return err
 	}
 
+	// refetch(refresh) for existing issues in the database that are still OPEN
+	db := taskCtx.GetDal()
+	cursor, err := db.Cursor(
+		dal.From(models.GithubIssue{}.TableName()),
+		dal.Where("state = ? AND repo_id = ? AND connection_id=?", "OPEN", data.Options.GithubId, data.Options.ConnectionId),
+	)
+	if err != nil {
+		return err
+	}
+	iterator, err := api.NewDalCursorIterator(db, cursor, reflect.TypeOf(models.GithubIssue{}))
+	if err != nil {
+		return err
+	}
+	issueUpdatedAt := make(map[int]time.Time)
+	err = apiCollector.InitGraphQLCollector(api.GraphqlCollectorArgs{
+		GraphqlClient: data.GraphqlClient,
+		Input:         iterator,
+		InputStep:     100,
+		Incremental:   true,
+		BuildQuery: func(reqData *api.GraphqlRequestData) (interface{}, map[string]interface{}, error) {
+			query := &GraphqlQueryIssueDetailWrapper{}
+			if reqData == nil {
+				return query, map[string]interface{}{}, nil
+			}
+			ownerName := strings.Split(data.Options.Name, "/")
+			inputIssues := reqData.Input.([]interface{})
+			outputIssues := []map[string]interface{}{}
+			for _, i := range inputIssues {
+				inputIssue := i.(*models.GithubIssue)
+				outputIssues = append(outputIssues, map[string]interface{}{
+					`number`: graphql.Int(inputIssue.Number),
+				})
+				issueUpdatedAt[inputIssue.Number] = inputIssue.GithubUpdatedAt
+			}
+			variables := map[string]interface{}{
+				"issue": outputIssues,
+				"owner": graphql.String(ownerName[0]),
+				"name":  graphql.String(ownerName[1]),
+			}
+			return query, variables, nil
+		},
+		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
+			query := queryWrapper.(*GraphqlQueryIssueDetailWrapper)
+			issues := query.Repository.Issues
+			for _, rawL := range issues {
+				if rawL.UpdatedAt.After(issueUpdatedAt[rawL.Number]) {
+					messages = append(messages, errors.Must1(json.Marshal(rawL)))
+				}
+			}
+			return
+		},
+	})
+	if err != nil {
+		return err
+	}
+
 	return apiCollector.Execute()
 }


(incubator-devlake) 13/19: fix: change issue.components to text to avoid data too long error

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 12253ce41138df44c442bf00f2a5b5028fa1fe8c
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 15:41:29 2024 +0800

    fix: change issue.components to text to avoid data too long error
---
 backend/core/models/domainlayer/ticket/issue.go    |  2 +-
 .../20240813_change_issue_component_type.go        | 40 ++++++++++++++++++++++
 2 files changed, 41 insertions(+), 1 deletion(-)

diff --git a/backend/core/models/domainlayer/ticket/issue.go b/backend/core/models/domainlayer/ticket/issue.go
index 278b2f825..f7d5cc562 100644
--- a/backend/core/models/domainlayer/ticket/issue.go
+++ b/backend/core/models/domainlayer/ticket/issue.go
@@ -51,7 +51,7 @@ type Issue struct {
 	Priority                string `gorm:"type:varchar(255)"`
 	Severity                string `gorm:"type:varchar(255)"`
 	Urgency                 string `gorm:"type:varchar(255)"`
-	Component               string `gorm:"type:varchar(255)"`
+	Component               string `gorm:"type:text"`
 	OriginalProject         string `gorm:"type:varchar(255)"`
 	IsSubtask               bool
 }
diff --git a/backend/core/models/migrationscripts/20240813_change_issue_component_type.go b/backend/core/models/migrationscripts/20240813_change_issue_component_type.go
new file mode 100644
index 000000000..8f7a2f2fe
--- /dev/null
+++ b/backend/core/models/migrationscripts/20240813_change_issue_component_type.go
@@ -0,0 +1,40 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+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.
+*/
+
+package migrationscripts
+
+import (
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
+	"github.com/apache/incubator-devlake/core/plugin"
+)
+
+var _ plugin.MigrationScript = (*changeIssueComponentType)(nil)
+
+type changeIssueComponentType struct{}
+
+func (script *changeIssueComponentType) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("issues", "components", "text")
+}
+
+func (*changeIssueComponentType) Version() uint64 {
+	return 20240813153901
+}
+
+func (*changeIssueComponentType) Name() string {
+	return "change issues.components type to text"
+}


(incubator-devlake) 05/19: refactor: update github deployment extractor to extract single records

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 731a1f52feca2db25de1b4f54fc8f2b6bc625553
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Wed Aug 7 17:29:35 2024 +0800

    refactor: update github deployment extractor to extract single records
---
 .../github_graphql/tasks/deployment_extractor.go        | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/backend/plugins/github_graphql/tasks/deployment_extractor.go b/backend/plugins/github_graphql/tasks/deployment_extractor.go
index 1eb6c252b..78a96ca76 100644
--- a/backend/plugins/github_graphql/tasks/deployment_extractor.go
+++ b/backend/plugins/github_graphql/tasks/deployment_extractor.go
@@ -51,21 +51,18 @@ func ExtractDeployments(taskCtx plugin.SubTaskContext) errors.Error {
 			Table: RAW_DEPLOYMENT,
 		},
 		Extract: func(row *api.RawData) ([]interface{}, errors.Error) {
-			apiDeployment := &GraphqlQueryDeploymentWrapper{}
-			err := errors.Convert(json.Unmarshal(row.Data, apiDeployment))
+			deployment := &GraphqlQueryDeploymentDeployment{}
+			err := errors.Convert(json.Unmarshal(row.Data, deployment))
 			if err != nil {
 				return nil, err
 			}
 
-			deployments := apiDeployment.Repository.Deployments.Deployments
 			var results []interface{}
-			for _, deployment := range deployments {
-				githubDeployment, err := convertGithubDeployment(deployment, data.Options.ConnectionId, data.Options.GithubId)
-				if err != nil {
-					return nil, errors.Convert(err)
-				}
-				results = append(results, githubDeployment)
+			githubDeployment, err := convertGithubDeployment(deployment, data.Options.ConnectionId, data.Options.GithubId)
+			if err != nil {
+				return nil, errors.Convert(err)
 			}
+			results = append(results, githubDeployment)
 
 			return results, nil
 		},
@@ -76,7 +73,7 @@ func ExtractDeployments(taskCtx plugin.SubTaskContext) errors.Error {
 	return extractor.Execute()
 }
 
-func convertGithubDeployment(deployment GraphqlQueryDeploymentDeployment, connectionId uint64, githubId int) (*githubModels.GithubDeployment, error) {
+func convertGithubDeployment(deployment *GraphqlQueryDeploymentDeployment, connectionId uint64, githubId int) (*githubModels.GithubDeployment, errors.Error) {
 	ret := &githubModels.GithubDeployment{
 		ConnectionId:      connectionId,
 		GithubId:          githubId,


(incubator-devlake) 14/19: doc: fix jira issues component tag

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit f10bd6a5ef7a7e1845b3b8d9acc732a0ca21492b
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 15:42:09 2024 +0800

    doc: fix jira issues component tag
---
 backend/plugins/jira/models/issue.go | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/backend/plugins/jira/models/issue.go b/backend/plugins/jira/models/issue.go
index 0b6294490..12db2b00b 100644
--- a/backend/plugins/jira/models/issue.go
+++ b/backend/plugins/jira/models/issue.go
@@ -62,7 +62,7 @@ type JiraIssue struct {
 	LeadTimeMinutes          *uint
 	StdType                  string `gorm:"type:varchar(255)"`
 	StdStatus                string `gorm:"type:varchar(255)"`
-	Components               string `gorm:"type:varchar(255)"`
+	Components               string `gorm:"type:text"`
 	Subtask                  bool
 	ChangelogTotal           int
 	WorklogTotal             int


(incubator-devlake) 02/19: fix: pull requests not being updated

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit d643a16ba2074dc4a34b7e0e379da659f3b5db19
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Wed Aug 7 16:22:02 2024 +0800

    fix: pull requests not being updated
---
 backend/go.mod                                     | 16 ++---
 backend/go.sum                                     | 36 +++++------
 .../pluginhelper/api/api_collector_stateful.go     | 14 ++++-
 .../helpers/pluginhelper/api/graphql_collector.go  |  8 +--
 .../plugins/github_graphql/tasks/pr_collector.go   | 73 ++++++++++++++++++++--
 5 files changed, 108 insertions(+), 39 deletions(-)

diff --git a/backend/go.mod b/backend/go.mod
index c892dede1..a44f58abe 100644
--- a/backend/go.mod
+++ b/backend/go.mod
@@ -15,7 +15,7 @@ require (
 	github.com/lib/pq v1.10.2
 	github.com/libgit2/git2go/v33 v33.0.6
 	github.com/magiconair/properties v1.8.5
-	github.com/merico-dev/graphql v0.0.0-20221027131946-77460a1fd4cd
+	github.com/merico-dev/graphql v0.0.0-20240807070533-1cafa544cd5d
 	github.com/mitchellh/mapstructure v1.5.0
 	github.com/panjf2000/ants/v2 v2.4.6
 	github.com/robfig/cron/v3 v3.0.0
@@ -30,10 +30,10 @@ require (
 	github.com/swaggo/swag v1.16.1
 	github.com/tidwall/gjson v1.14.3
 	github.com/viant/afs v1.16.0
-	golang.org/x/crypto v0.21.0 // indirect
+	golang.org/x/crypto v0.26.0 // indirect
 	golang.org/x/exp v0.0.0-20221028150844-83b7d23a625f
 	golang.org/x/oauth2 v0.0.0-20210402161424-2e8d93401602
-	golang.org/x/sync v0.7.0
+	golang.org/x/sync v0.8.0
 	gorm.io/datatypes v1.0.1
 	gorm.io/driver/mysql v1.5.1
 	gorm.io/driver/postgres v1.5.2
@@ -105,10 +105,10 @@ require (
 	github.com/ugorji/go/codec v1.2.11 // indirect
 	github.com/xanzy/ssh-agent v0.3.3 // indirect
 	golang.org/x/arch v0.3.0 // indirect
-	golang.org/x/net v0.22.0 // indirect
-	golang.org/x/sys v0.18.0 // indirect
-	golang.org/x/text v0.14.0 // indirect
-	golang.org/x/tools v0.13.0 // indirect
+	golang.org/x/net v0.28.0 // indirect
+	golang.org/x/sys v0.23.0 // indirect
+	golang.org/x/text v0.17.0 // indirect
+	golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d // indirect
 	google.golang.org/appengine v1.6.7 // indirect
 	google.golang.org/protobuf v1.30.0 // indirect
 	gopkg.in/ini.v1 v1.67.0 // indirect
@@ -122,7 +122,7 @@ require (
 	github.com/go-sql-driver/mysql v1.7.1
 	github.com/golang-jwt/jwt/v5 v5.0.0-rc.1
 	github.com/rogpeppe/go-internal v1.11.0
-	golang.org/x/mod v0.13.0
+	golang.org/x/mod v0.17.0
 )
 
 //replace github.com/apache/incubator-devlake => ./
diff --git a/backend/go.sum b/backend/go.sum
index dd6f20f42..b8106a8c6 100644
--- a/backend/go.sum
+++ b/backend/go.sum
@@ -389,8 +389,8 @@ github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWE
 github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
 github.com/mattn/go-sqlite3 v1.14.5 h1:1IdxlwTNazvbKJQSxoJ5/9ECbEeaTTyeU7sEAZ5KKTQ=
 github.com/mattn/go-sqlite3 v1.14.5/go.mod h1:WVKg1VTActs4Qso6iwGbiFih2UIHo0ENGwNd0Lj+XmI=
-github.com/merico-dev/graphql v0.0.0-20221027131946-77460a1fd4cd h1:hGQXd4a72JSFIZE+ZVkH5ivE925PGogjob6stgc2too=
-github.com/merico-dev/graphql v0.0.0-20221027131946-77460a1fd4cd/go.mod h1:dcDqG8HXVtfEhTCipFMa0Q+RTKTtDKIO2vJt+JVzHEQ=
+github.com/merico-dev/graphql v0.0.0-20240807070533-1cafa544cd5d h1:FpP+YRQudZtnrnIaFvVc87D/WVI7tWi0hBrnRCY8wmQ=
+github.com/merico-dev/graphql v0.0.0-20240807070533-1cafa544cd5d/go.mod h1:dcDqG8HXVtfEhTCipFMa0Q+RTKTtDKIO2vJt+JVzHEQ=
 github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg=
 github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc=
 github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
@@ -564,8 +564,8 @@ golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5y
 golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
 golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
 golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
-golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA=
-golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs=
+golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw=
+golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54=
 golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
 golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
 golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
@@ -605,8 +605,8 @@ golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
 golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
 golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
 golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
-golang.org/x/mod v0.13.0 h1:I/DsJXRlw/8l/0c24sM9yb0T4z9liZTduXvdAWYiysY=
-golang.org/x/mod v0.13.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
+golang.org/x/mod v0.17.0 h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA=
+golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
 golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
 golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
 golang.org/x/net v0.0.0-20181023162649-9b4f9f5ad519/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -650,8 +650,8 @@ golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY=
 golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
 golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
 golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
-golang.org/x/net v0.22.0 h1:9sGLhx7iRIHEiX0oAJ3MRZMUCElJgy7Br1nO+AMN3Tc=
-golang.org/x/net v0.22.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
+golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
+golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
 golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
 golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
 golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -678,10 +678,8 @@ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJ
 golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
-golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E=
-golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
-golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M=
-golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
+golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
+golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
 golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -743,15 +741,15 @@ golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
-golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM=
+golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
 golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
 golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
 golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
 golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=
 golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
 golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
-golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8=
+golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU=
 golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
@@ -764,8 +762,8 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
 golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
 golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
 golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
-golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
-golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
+golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc=
+golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
 golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
 golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
 golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
@@ -826,8 +824,8 @@ golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0=
 golang.org/x/tools v0.1.2/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
 golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
 golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
-golang.org/x/tools v0.13.0 h1:Iey4qkscZuv0VvIt8E0neZjtPVQFSc870HQ448QgEmQ=
-golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58=
+golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg=
+golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk=
 golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 golang.org/x/xerrors v0.0.0-20190513163551-3ee3066db522/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
diff --git a/backend/helpers/pluginhelper/api/api_collector_stateful.go b/backend/helpers/pluginhelper/api/api_collector_stateful.go
index 09c1032a7..f4e2c67fe 100644
--- a/backend/helpers/pluginhelper/api/api_collector_stateful.go
+++ b/backend/helpers/pluginhelper/api/api_collector_stateful.go
@@ -70,7 +70,19 @@ func (m *StatefulApiCollector) InitCollector(args ApiCollectorArgs) errors.Error
 // InitGraphQLCollector appends a new GraphQL collector to the list
 func (m *StatefulApiCollector) InitGraphQLCollector(args GraphqlCollectorArgs) errors.Error {
 	args.RawDataSubTaskArgs = m.RawDataSubTaskArgs
-	args.Incremental = m.CollectorStateManager.IsIncremental()
+	// highest priority: caller may hardcode the incremental flag.
+	//   e.g. github graphql pr_collector need to refetch OPENing PRs existing in the database
+	if !args.Incremental {
+		// medium priority: force incremental flag to false when full sync is enabled
+		syncPolicy := args.Ctx.TaskContext().SyncPolicy()
+		if syncPolicy != nil && syncPolicy.FullSync {
+			args.Incremental = false
+		} else {
+			// lowest priority: use the incremental flag from the state manager
+			args.Incremental = m.CollectorStateManager.IsIncremental()
+		}
+	}
+
 	graphqlCollector, err := NewGraphqlCollector(args)
 	if err != nil {
 		return err
diff --git a/backend/helpers/pluginhelper/api/graphql_collector.go b/backend/helpers/pluginhelper/api/graphql_collector.go
index f1d74a7cb..e83435e9b 100644
--- a/backend/helpers/pluginhelper/api/graphql_collector.go
+++ b/backend/helpers/pluginhelper/api/graphql_collector.go
@@ -138,14 +138,8 @@ func (collector *GraphqlCollector) Execute() errors.Error {
 	if err != nil {
 		return errors.Default.Wrap(err, "error running auto-migrate")
 	}
-
-	isIncremental := collector.args.Incremental
-	syncPolicy := collector.args.Ctx.TaskContext().SyncPolicy()
-	if syncPolicy != nil && syncPolicy.FullSync {
-		isIncremental = false
-	}
 	// flush data if not incremental collection
-	if !isIncremental {
+	if !collector.args.Incremental {
 		err = db.Delete(&RawData{}, dal.From(collector.table), dal.Where("params = ?", collector.params))
 		if err != nil {
 			return errors.Default.Wrap(err, "error deleting data from collector")
diff --git a/backend/plugins/github_graphql/tasks/pr_collector.go b/backend/plugins/github_graphql/tasks/pr_collector.go
index 9e457e5b9..d1bf24115 100644
--- a/backend/plugins/github_graphql/tasks/pr_collector.go
+++ b/backend/plugins/github_graphql/tasks/pr_collector.go
@@ -19,26 +19,26 @@ package tasks
 
 import (
 	"encoding/json"
+	"reflect"
 	"strings"
 	"time"
 
+	"github.com/apache/incubator-devlake/core/dal"
 	"github.com/apache/incubator-devlake/core/errors"
 	"github.com/apache/incubator-devlake/core/plugin"
 	"github.com/apache/incubator-devlake/helpers/pluginhelper/api"
+	"github.com/apache/incubator-devlake/plugins/github/models"
 	"github.com/apache/incubator-devlake/plugins/github/tasks"
 	"github.com/merico-dev/graphql"
 )
 
 const RAW_PRS_TABLE = "github_graphql_prs"
 
+// GraphqlQueryPrWrapper is a wrapper for collecting new PRs since the previous collection
 type GraphqlQueryPrWrapper struct {
 	RateLimit struct {
 		Cost int
 	}
-	// now it orderBy UPDATED_AT and use cursor pagination
-	// It may miss some PRs updated when collection.
-	// Because these missed PRs will be collected on next, But it's not enough.
-	// So Next Millstone(0.17) we should change it to filter by CREATE_AT + collect detail
 	Repository struct {
 		PullRequests struct {
 			PageInfo   *api.GraphqlQueryPageInfo
@@ -48,6 +48,16 @@ type GraphqlQueryPrWrapper struct {
 	} `graphql:"repository(owner: $owner, name: $name)"`
 }
 
+// GraphqlQueryPrDetailWrapper is a wrapper for refetching OPEN PRs from the database to update the details
+type GraphqlQueryPrDetailWrapper struct {
+	RateLimit struct {
+		Cost int
+	}
+	Repository struct {
+		PullRequests []GraphqlQueryPr `graphql:"pullRequest(number: $number)" graphql-extend:"true"`
+	} `graphql:"repository(owner: $owner, name: $name)"`
+}
+
 type GraphqlQueryPr struct {
 	DatabaseId int
 	Number     int
@@ -212,5 +222,60 @@ func CollectPrs(taskCtx plugin.SubTaskContext) errors.Error {
 		return err
 	}
 
+	db := taskCtx.GetDal()
+	cursor, err := db.Cursor(
+		dal.From(models.GithubPullRequest{}.TableName()),
+		dal.Where("state = ? AND repo_id = ? AND connection_id=?", "OPEN", data.Options.GithubId, data.Options.ConnectionId),
+	)
+	if err != nil {
+		return err
+	}
+	iterator, err := api.NewDalCursorIterator(db, cursor, reflect.TypeOf(models.GithubPullRequest{}))
+	if err != nil {
+		return err
+	}
+	prUpdated := make(map[int]time.Time)
+	err = apiCollector.InitGraphQLCollector(api.GraphqlCollectorArgs{
+		GraphqlClient: data.GraphqlClient,
+		Input:         iterator,
+		InputStep:     100,
+		Incremental:   true,
+		BuildQuery: func(reqData *api.GraphqlRequestData) (interface{}, map[string]interface{}, error) {
+			query := &GraphqlQueryPrDetailWrapper{}
+			if reqData == nil {
+				return query, map[string]interface{}{}, nil
+			}
+			ownerName := strings.Split(data.Options.Name, "/")
+			inputPrs := reqData.Input.([]interface{})
+			outputPrs := []map[string]interface{}{}
+			for _, i := range inputPrs {
+				inputPr := i.(*models.GithubPullRequest)
+				outputPrs = append(outputPrs, map[string]interface{}{
+					`number`: graphql.Int(inputPr.Number),
+				})
+				prUpdated[inputPr.Number] = inputPr.GithubUpdatedAt
+			}
+			variables := map[string]interface{}{
+				"pullRequest": outputPrs,
+				"owner":       graphql.String(ownerName[0]),
+				"name":        graphql.String(ownerName[1]),
+			}
+			return query, variables, nil
+		},
+		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
+			query := queryWrapper.(*GraphqlQueryPrDetailWrapper)
+			prs := query.Repository.PullRequests
+			for _, rawL := range prs {
+				if rawL.UpdatedAt.After(prUpdated[rawL.Number]) {
+					messages = append(messages, errors.Must1(json.Marshal(rawL)))
+				}
+			}
+			return
+		},
+	})
+	if err != nil {
+		return err
+	}
+
 	return apiCollector.Execute()
 }


(incubator-devlake) 11/19: fix: column type should not be parameterized

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 372ea3ebea2ffdb1a9d78a19db3d0ef39bf47c59
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 15:33:54 2024 +0800

    fix: column type should not be parameterized
---
 backend/impls/dalgorm/dalgorm.go | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/backend/impls/dalgorm/dalgorm.go b/backend/impls/dalgorm/dalgorm.go
index 7812d94dc..70d48e2bd 100644
--- a/backend/impls/dalgorm/dalgorm.go
+++ b/backend/impls/dalgorm/dalgorm.go
@@ -379,15 +379,14 @@ func (d *Dalgorm) ModifyColumnType(table, columnName, columnType string) errors.
 	defer func() {
 		_ = d.Exec("SELECT * FROM ? LIMIT 1", clause.Table{Name: table})
 	}()
-	sql := "ALTER TABLE ? MODIFY COLUMN ? ?"
+	sql := "ALTER TABLE ? MODIFY COLUMN ? %s"
 	if d.db.Dialector.Name() == "postgres" {
-		sql = "ALTER TABLE ? ALTER COLUMN ? TYPE ?"
+		sql = "ALTER TABLE ? ALTER COLUMN ? TYPE %s"
 	}
 	return d.Exec(
-		sql,
+		fmt.Sprintf(sql, columnType),
 		clause.Table{Name: table},
 		clause.Column{Name: columnName},
-		clause.Column{Name: columnType},
 	)
 }
 


(incubator-devlake) 03/19: refactor: update github job extractor for single record structure

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit ea7a6899f8a9847d9c5d63d0d8892814460429ce
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Wed Aug 7 17:15:16 2024 +0800

    refactor: update github job extractor for single record structure
---
 .../plugins/github_graphql/tasks/job_collector.go  | 17 +++---
 .../plugins/github_graphql/tasks/job_extractor.go  | 67 ++++++++++------------
 2 files changed, 40 insertions(+), 44 deletions(-)

diff --git a/backend/plugins/github_graphql/tasks/job_collector.go b/backend/plugins/github_graphql/tasks/job_collector.go
index 10694e56a..73c914a8b 100644
--- a/backend/plugins/github_graphql/tasks/job_collector.go
+++ b/backend/plugins/github_graphql/tasks/job_collector.go
@@ -160,15 +160,16 @@ func CollectJobs(taskCtx plugin.SubTaskContext) errors.Error {
 		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
 			query := queryWrapper.(*GraphqlQueryCheckRunWrapper)
 			for _, node := range query.Node {
-				checkRun := node.CheckSuite.CheckRuns.Nodes[0]
-				updatedAt := checkRun.StartedAt
-				if checkRun.CompletedAt != nil {
-					updatedAt = checkRun.CompletedAt
-				}
-				if apiCollector.GetSince() != nil && !apiCollector.GetSince().Before(*updatedAt) {
-					return messages, helper.ErrFinishCollect
+				for _, checkRun := range node.CheckSuite.CheckRuns.Nodes {
+					updatedAt := checkRun.StartedAt
+					if checkRun.CompletedAt != nil {
+						updatedAt = checkRun.CompletedAt
+					}
+					if apiCollector.GetSince() != nil && !apiCollector.GetSince().Before(*updatedAt) {
+						return messages, helper.ErrFinishCollect
+					}
+					messages = append(messages, errors.Must1(json.Marshal(node)))
 				}
-				messages = append(messages, errors.Must1(json.Marshal(node)))
 			}
 			return
 		},
diff --git a/backend/plugins/github_graphql/tasks/job_extractor.go b/backend/plugins/github_graphql/tasks/job_extractor.go
index 4e38cc727..1bd035a7e 100644
--- a/backend/plugins/github_graphql/tasks/job_extractor.go
+++ b/backend/plugins/github_graphql/tasks/job_extractor.go
@@ -51,47 +51,42 @@ func ExtractJobs(taskCtx plugin.SubTaskContext) errors.Error {
 			Table: RAW_GRAPHQL_JOBS_TABLE,
 		},
 		Extract: func(row *api.RawData) ([]interface{}, errors.Error) {
-			apiJob := &GraphqlQueryCheckRunWrapper{}
-			err := errors.Convert(json.Unmarshal(row.Data, apiJob))
+			checkSuite := &GraphqlQueryCheckSuite{}
+			err := errors.Convert(json.Unmarshal(row.Data, checkSuite))
 			if err != nil {
 				return nil, err
 			}
-
-			nodes := apiJob.Node
 			results := make([]interface{}, 0, 1)
-			for _, node := range nodes {
-				for _, checkRun := range node.CheckSuite.CheckRuns.Nodes {
-
-					paramsBytes, err := json.Marshal(checkRun.Steps.Nodes)
-					if err != nil {
-						taskCtx.GetLogger().Error(err, `Marshal checkRun.Steps.Nodes fail and ignore`)
-					}
-					githubJob := &models.GithubJob{
-						ConnectionId: data.Options.ConnectionId,
-						RunID:        node.CheckSuite.WorkflowRun.DatabaseId,
-						RepoId:       data.Options.GithubId,
-						ID:           checkRun.DatabaseId,
-						NodeID:       checkRun.Id,
-						HTMLURL:      checkRun.DetailsUrl,
-						Status:       strings.ToUpper(checkRun.Status),
-						Conclusion:   strings.ToUpper(checkRun.Conclusion),
-						StartedAt:    checkRun.StartedAt,
-						CompletedAt:  checkRun.CompletedAt,
-						Name:         checkRun.Name,
-						Steps:        paramsBytes,
-						Type:         data.RegexEnricher.ReturnNameIfMatched(devops.DEPLOYMENT, checkRun.Name),
-						Environment:  data.RegexEnricher.ReturnNameIfOmittedOrMatched(devops.PRODUCTION, checkRun.Name),
-						// these columns can not fill by graphql
-						//HeadSha:       ``,  // use _tool_github_runs
-						//RunURL:        ``,
-						//CheckRunURL:   ``,
-						//Labels:        ``, // not in use
-						//RunnerID:      ``, // not in use
-						//RunnerName:    ``, // not in use
-						//RunnerGroupID: ``, // not in use
-					}
-					results = append(results, githubJob)
+			for _, checkRun := range checkSuite.CheckSuite.CheckRuns.Nodes {
+				paramsBytes, err := json.Marshal(checkRun.Steps.Nodes)
+				if err != nil {
+					taskCtx.GetLogger().Error(err, `Marshal checkRun.Steps.Nodes fail and ignore`)
+				}
+				githubJob := &models.GithubJob{
+					ConnectionId: data.Options.ConnectionId,
+					RunID:        checkSuite.CheckSuite.WorkflowRun.DatabaseId,
+					RepoId:       data.Options.GithubId,
+					ID:           checkRun.DatabaseId,
+					NodeID:       checkRun.Id,
+					HTMLURL:      checkRun.DetailsUrl,
+					Status:       strings.ToUpper(checkRun.Status),
+					Conclusion:   strings.ToUpper(checkRun.Conclusion),
+					StartedAt:    checkRun.StartedAt,
+					CompletedAt:  checkRun.CompletedAt,
+					Name:         checkRun.Name,
+					Steps:        paramsBytes,
+					Type:         data.RegexEnricher.ReturnNameIfMatched(devops.DEPLOYMENT, checkRun.Name),
+					Environment:  data.RegexEnricher.ReturnNameIfOmittedOrMatched(devops.PRODUCTION, checkRun.Name),
+					// these columns can not fill by graphql
+					//HeadSha:       ``,  // use _tool_github_runs
+					//RunURL:        ``,
+					//CheckRunURL:   ``,
+					//Labels:        ``, // not in use
+					//RunnerID:      ``, // not in use
+					//RunnerName:    ``, // not in use
+					//RunnerGroupID: ``, // not in use
 				}
+				results = append(results, githubJob)
 			}
 			return results, nil
 


(incubator-devlake) 07/19: docs: add comments

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 7638cf1d905f2f03a278c911ed95e7fac0ba3bdf
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Wed Aug 7 17:56:54 2024 +0800

    docs: add comments
---
 backend/plugins/github_graphql/tasks/pr_collector.go | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/backend/plugins/github_graphql/tasks/pr_collector.go b/backend/plugins/github_graphql/tasks/pr_collector.go
index d1bf24115..b3d462467 100644
--- a/backend/plugins/github_graphql/tasks/pr_collector.go
+++ b/backend/plugins/github_graphql/tasks/pr_collector.go
@@ -181,6 +181,7 @@ func CollectPrs(taskCtx plugin.SubTaskContext) errors.Error {
 		return err
 	}
 
+	// collect new PRs since the previous run
 	since := apiCollector.GetSince()
 	err = apiCollector.InitGraphQLCollector(api.GraphqlCollectorArgs{
 		GraphqlClient: data.GraphqlClient,
@@ -222,6 +223,7 @@ func CollectPrs(taskCtx plugin.SubTaskContext) errors.Error {
 		return err
 	}
 
+	// refetch(refresh) for existing PRs in the database that are still OPEN
 	db := taskCtx.GetDal()
 	cursor, err := db.Cursor(
 		dal.From(models.GithubPullRequest{}.TableName()),
@@ -234,7 +236,7 @@ func CollectPrs(taskCtx plugin.SubTaskContext) errors.Error {
 	if err != nil {
 		return err
 	}
-	prUpdated := make(map[int]time.Time)
+	prUpdatedAt := make(map[int]time.Time)
 	err = apiCollector.InitGraphQLCollector(api.GraphqlCollectorArgs{
 		GraphqlClient: data.GraphqlClient,
 		Input:         iterator,
@@ -253,7 +255,7 @@ func CollectPrs(taskCtx plugin.SubTaskContext) errors.Error {
 				outputPrs = append(outputPrs, map[string]interface{}{
 					`number`: graphql.Int(inputPr.Number),
 				})
-				prUpdated[inputPr.Number] = inputPr.GithubUpdatedAt
+				prUpdatedAt[inputPr.Number] = inputPr.GithubUpdatedAt
 			}
 			variables := map[string]interface{}{
 				"pullRequest": outputPrs,
@@ -266,7 +268,7 @@ func CollectPrs(taskCtx plugin.SubTaskContext) errors.Error {
 			query := queryWrapper.(*GraphqlQueryPrDetailWrapper)
 			prs := query.Repository.PullRequests
 			for _, rawL := range prs {
-				if rawL.UpdatedAt.After(prUpdated[rawL.Number]) {
+				if rawL.UpdatedAt.After(prUpdatedAt[rawL.Number]) {
 					messages = append(messages, errors.Must1(json.Marshal(rawL)))
 				}
 			}


(incubator-devlake) 04/19: refactor: update github issue extractor to extract single record

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 6128b6872715ae4677c5a616c8b1eff6234c7384
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Wed Aug 7 17:23:32 2024 +0800

    refactor: update github issue extractor to extract single record
---
 .../github_graphql/tasks/issue_extractor.go        | 55 ++++++++++------------
 1 file changed, 26 insertions(+), 29 deletions(-)

diff --git a/backend/plugins/github_graphql/tasks/issue_extractor.go b/backend/plugins/github_graphql/tasks/issue_extractor.go
index b5652587e..7ebd40822 100644
--- a/backend/plugins/github_graphql/tasks/issue_extractor.go
+++ b/backend/plugins/github_graphql/tasks/issue_extractor.go
@@ -63,38 +63,35 @@ func ExtractIssues(taskCtx plugin.SubTaskContext) errors.Error {
 			Table: RAW_ISSUES_TABLE,
 		},
 		Extract: func(row *api.RawData) ([]interface{}, errors.Error) {
-			apiIssue := &GraphqlQueryIssueWrapper{}
-			err := errors.Convert(json.Unmarshal(row.Data, apiIssue))
+			issue := &GraphqlQueryIssue{}
+			err := errors.Convert(json.Unmarshal(row.Data, issue))
 			if err != nil {
 				return nil, err
 			}
-			issues := apiIssue.Repository.IssueList.Issues
 			results := make([]interface{}, 0, 1)
-			for _, issue := range issues {
-				githubIssue, err := convertGithubIssue(milestoneMap, issue, data.Options.ConnectionId, data.Options.GithubId)
-				if err != nil {
-					return nil, err
-				}
-				githubLabels, err := convertGithubLabels(issueRegexes, issue, githubIssue)
-				if err != nil {
-					return nil, err
-				}
-				results = append(results, githubLabels...)
-				results = append(results, githubIssue)
-				if len(issue.AssigneeList.Assignees) > 0 {
-					extractGraphqlPreAccount(&results, &issue.AssigneeList.Assignees[0], data.Options.GithubId, data.Options.ConnectionId)
-				}
-				extractGraphqlPreAccount(&results, issue.Author, data.Options.GithubId, data.Options.ConnectionId)
-				for _, assignee := range issue.AssigneeList.Assignees {
-					issueAssignee := &models.GithubIssueAssignee{
-						ConnectionId: githubIssue.ConnectionId,
-						IssueId:      githubIssue.GithubId,
-						RepoId:       githubIssue.RepoId,
-						AssigneeId:   assignee.Id,
-						AssigneeName: assignee.Login,
-					}
-					results = append(results, issueAssignee)
+			githubIssue, err := convertGithubIssue(milestoneMap, issue, data.Options.ConnectionId, data.Options.GithubId)
+			if err != nil {
+				return nil, err
+			}
+			githubLabels, err := convertGithubLabels(issueRegexes, issue, githubIssue)
+			if err != nil {
+				return nil, err
+			}
+			results = append(results, githubLabels...)
+			results = append(results, githubIssue)
+			if len(issue.AssigneeList.Assignees) > 0 {
+				extractGraphqlPreAccount(&results, &issue.AssigneeList.Assignees[0], data.Options.GithubId, data.Options.ConnectionId)
+			}
+			extractGraphqlPreAccount(&results, issue.Author, data.Options.GithubId, data.Options.ConnectionId)
+			for _, assignee := range issue.AssigneeList.Assignees {
+				issueAssignee := &models.GithubIssueAssignee{
+					ConnectionId: githubIssue.ConnectionId,
+					IssueId:      githubIssue.GithubId,
+					RepoId:       githubIssue.RepoId,
+					AssigneeId:   assignee.Id,
+					AssigneeName: assignee.Login,
 				}
+				results = append(results, issueAssignee)
 			}
 			return results, nil
 		},
@@ -129,7 +126,7 @@ func getMilestoneMap(db dal.Dal, repoId int, connectionId uint64) (map[int]int,
 	return milestoneMap, nil
 }
 
-func convertGithubIssue(milestoneMap map[int]int, issue GraphqlQueryIssue, connectionId uint64, repositoryId int) (*models.GithubIssue, errors.Error) {
+func convertGithubIssue(milestoneMap map[int]int, issue *GraphqlQueryIssue, connectionId uint64, repositoryId int) (*models.GithubIssue, errors.Error) {
 	githubIssue := &models.GithubIssue{
 		ConnectionId:    connectionId,
 		GithubId:        issue.DatabaseId,
@@ -163,7 +160,7 @@ func convertGithubIssue(milestoneMap map[int]int, issue GraphqlQueryIssue, conne
 	return githubIssue, nil
 }
 
-func convertGithubLabels(issueRegexes *githubTasks.IssueRegexes, issue GraphqlQueryIssue, githubIssue *models.GithubIssue) ([]interface{}, errors.Error) {
+func convertGithubLabels(issueRegexes *githubTasks.IssueRegexes, issue *GraphqlQueryIssue, githubIssue *models.GithubIssue) ([]interface{}, errors.Error) {
 	var results []interface{}
 	var joinedLabels []string
 	for _, label := range issue.Labels.Nodes {


(incubator-devlake) 19/19: fix: #7715 Data too long for column 'project_key'

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 9c848096f262e407a2123280f30c2c572366fa6a
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 16:08:35 2024 +0800

    fix: #7715 Data too long for column 'project_key'
---
 .../models/domainlayer/codequality/cq_projects.go  |  2 +-
 .../20240813_increase_project_key_length.go}       | 29 ++++++++--------------
 backend/plugins/sonarqube/api/blueprint_v200.go    |  2 +-
 .../20240813_increase_project_key_length.go}       | 29 ++++++++--------------
 .../sonarqube/models/migrationscripts/register.go  |  1 +
 .../plugins/sonarqube/models/sonarqube_project.go  |  2 +-
 .../plugins/sonarqube/tasks/projects_convertor.go  | 12 ++++-----
 7 files changed, 32 insertions(+), 45 deletions(-)

diff --git a/backend/core/models/domainlayer/codequality/cq_projects.go b/backend/core/models/domainlayer/codequality/cq_projects.go
index 5ba5d11b2..fe80dd1bb 100644
--- a/backend/core/models/domainlayer/codequality/cq_projects.go
+++ b/backend/core/models/domainlayer/codequality/cq_projects.go
@@ -26,7 +26,7 @@ import (
 var _ plugin.Scope = (*CqProject)(nil)
 
 type CqProject struct {
-	domainlayer.DomainEntity
+	domainlayer.DomainEntityExtended
 	Name             string `gorm:"type:varchar(255)"`
 	Qualifier        string `gorm:"type:varchar(255)"`
 	Visibility       string `gorm:"type:varchar(64)"`
diff --git a/backend/core/models/domainlayer/codequality/cq_projects.go b/backend/core/models/migrationscripts/20240813_increase_project_key_length.go
similarity index 56%
copy from backend/core/models/domainlayer/codequality/cq_projects.go
copy to backend/core/models/migrationscripts/20240813_increase_project_key_length.go
index 5ba5d11b2..609b3d736 100644
--- a/backend/core/models/domainlayer/codequality/cq_projects.go
+++ b/backend/core/models/migrationscripts/20240813_increase_project_key_length.go
@@ -15,33 +15,26 @@ See the License for the specific language governing permissions and
 limitations under the License.
 */
 
-package codequality
+package migrationscripts
 
 import (
-	"github.com/apache/incubator-devlake/core/models/common"
-	"github.com/apache/incubator-devlake/core/models/domainlayer"
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
 	"github.com/apache/incubator-devlake/core/plugin"
 )
 
-var _ plugin.Scope = (*CqProject)(nil)
+var _ plugin.MigrationScript = (*increaseProjectKeyLength)(nil)
 
-type CqProject struct {
-	domainlayer.DomainEntity
-	Name             string `gorm:"type:varchar(255)"`
-	Qualifier        string `gorm:"type:varchar(255)"`
-	Visibility       string `gorm:"type:varchar(64)"`
-	LastAnalysisDate *common.Iso8601Time
-	CommitSha        string `gorm:"type:varchar(128)"`
-}
+type increaseProjectKeyLength struct{}
 
-func (CqProject) TableName() string {
-	return "cq_projects"
+func (script *increaseProjectKeyLength) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("cq_projects", "project_key", "varchar(500)")
 }
 
-func (s *CqProject) ScopeId() string {
-	return s.Id
+func (*increaseProjectKeyLength) Version() uint64 {
+	return 20240813160242
 }
 
-func (s *CqProject) ScopeName() string {
-	return s.Name
+func (*increaseProjectKeyLength) Name() string {
+	return "increase cq_projects.project_key length to 500"
 }
diff --git a/backend/plugins/sonarqube/api/blueprint_v200.go b/backend/plugins/sonarqube/api/blueprint_v200.go
index 250b1bf1d..e4804534b 100644
--- a/backend/plugins/sonarqube/api/blueprint_v200.go
+++ b/backend/plugins/sonarqube/api/blueprint_v200.go
@@ -111,7 +111,7 @@ func makeScopesV200(
 		sonarqubeProject := scopeDetail.Scope
 		// add board to scopes
 		domainBoard := &codequality.CqProject{
-			DomainEntity: domainlayer.DomainEntity{
+			DomainEntityExtended: domainlayer.DomainEntityExtended{
 				Id: didgen.NewDomainIdGenerator(&models.SonarqubeProject{}).Generate(sonarqubeProject.ConnectionId, sonarqubeProject.ProjectKey),
 			},
 			Name: sonarqubeProject.Name,
diff --git a/backend/core/models/domainlayer/codequality/cq_projects.go b/backend/plugins/sonarqube/models/migrationscripts/20240813_increase_project_key_length.go
similarity index 56%
copy from backend/core/models/domainlayer/codequality/cq_projects.go
copy to backend/plugins/sonarqube/models/migrationscripts/20240813_increase_project_key_length.go
index 5ba5d11b2..ed1981670 100644
--- a/backend/core/models/domainlayer/codequality/cq_projects.go
+++ b/backend/plugins/sonarqube/models/migrationscripts/20240813_increase_project_key_length.go
@@ -15,33 +15,26 @@ See the License for the specific language governing permissions and
 limitations under the License.
 */
 
-package codequality
+package migrationscripts
 
 import (
-	"github.com/apache/incubator-devlake/core/models/common"
-	"github.com/apache/incubator-devlake/core/models/domainlayer"
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
 	"github.com/apache/incubator-devlake/core/plugin"
 )
 
-var _ plugin.Scope = (*CqProject)(nil)
+var _ plugin.MigrationScript = (*increaseProjectKeyLength)(nil)
 
-type CqProject struct {
-	domainlayer.DomainEntity
-	Name             string `gorm:"type:varchar(255)"`
-	Qualifier        string `gorm:"type:varchar(255)"`
-	Visibility       string `gorm:"type:varchar(64)"`
-	LastAnalysisDate *common.Iso8601Time
-	CommitSha        string `gorm:"type:varchar(128)"`
-}
+type increaseProjectKeyLength struct{}
 
-func (CqProject) TableName() string {
-	return "cq_projects"
+func (script *increaseProjectKeyLength) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("_tool_sonarqube_projects", "project_key", "varchar(500)")
 }
 
-func (s *CqProject) ScopeId() string {
-	return s.Id
+func (*increaseProjectKeyLength) Version() uint64 {
+	return 20240813155602
 }
 
-func (s *CqProject) ScopeName() string {
-	return s.Name
+func (*increaseProjectKeyLength) Name() string {
+	return "increase _tool_sonarqube_projects.project_key length to 500"
 }
diff --git a/backend/plugins/sonarqube/models/migrationscripts/register.go b/backend/plugins/sonarqube/models/migrationscripts/register.go
index dae45e25c..b11549cb8 100644
--- a/backend/plugins/sonarqube/models/migrationscripts/register.go
+++ b/backend/plugins/sonarqube/models/migrationscripts/register.go
@@ -35,5 +35,6 @@ func All() []plugin.MigrationScript {
 		new(updateSonarQubeScopeConfig20240614),
 		new(modifyNameLength),
 		new(changeIssueComponentType),
+		new(increaseProjectKeyLength),
 	}
 }
diff --git a/backend/plugins/sonarqube/models/sonarqube_project.go b/backend/plugins/sonarqube/models/sonarqube_project.go
index b31e0214f..aeb57134b 100644
--- a/backend/plugins/sonarqube/models/sonarqube_project.go
+++ b/backend/plugins/sonarqube/models/sonarqube_project.go
@@ -26,7 +26,7 @@ var _ plugin.ToolLayerScope = (*SonarqubeProject)(nil)
 
 type SonarqubeProject struct {
 	common.Scope     `mapstructure:",squash"`
-	ProjectKey       string              `json:"projectKey" validate:"required" gorm:"type:varchar(255);primaryKey" mapstructure:"projectKey"`
+	ProjectKey       string              `json:"projectKey" validate:"required" gorm:"type:varchar(500);primaryKey" mapstructure:"projectKey"`
 	Name             string              `json:"name" gorm:"type:varchar(500)" mapstructure:"name"`
 	Qualifier        string              `json:"qualifier" gorm:"type:varchar(255)" mapstructure:"qualifier"`
 	Visibility       string              `json:"visibility" gorm:"type:varchar(64)" mapstructure:"visibility"`
diff --git a/backend/plugins/sonarqube/tasks/projects_convertor.go b/backend/plugins/sonarqube/tasks/projects_convertor.go
index afa6a694d..3e3c1ebba 100644
--- a/backend/plugins/sonarqube/tasks/projects_convertor.go
+++ b/backend/plugins/sonarqube/tasks/projects_convertor.go
@@ -58,12 +58,12 @@ func ConvertProjects(taskCtx plugin.SubTaskContext) errors.Error {
 		Convert: func(inputRow interface{}) ([]interface{}, errors.Error) {
 			sonarqubeProject := inputRow.(*sonarqubeModels.SonarqubeProject)
 			domainProject := &codequality.CqProject{
-				DomainEntity:     domainlayer.DomainEntity{Id: projectIdGen.Generate(data.Options.ConnectionId, sonarqubeProject.ProjectKey)},
-				Name:             sonarqubeProject.Name,
-				Qualifier:        sonarqubeProject.Qualifier,
-				Visibility:       sonarqubeProject.Visibility,
-				LastAnalysisDate: sonarqubeProject.LastAnalysisDate,
-				CommitSha:        sonarqubeProject.Revision,
+				DomainEntityExtended: domainlayer.DomainEntityExtended{Id: projectIdGen.Generate(data.Options.ConnectionId, sonarqubeProject.ProjectKey)},
+				Name:                 sonarqubeProject.Name,
+				Qualifier:            sonarqubeProject.Qualifier,
+				Visibility:           sonarqubeProject.Visibility,
+				LastAnalysisDate:     sonarqubeProject.LastAnalysisDate,
+				CommitSha:            sonarqubeProject.Revision,
 			}
 			return []interface{}{
 				domainProject,


(incubator-devlake) 18/19: fix: change gitlab issue components field to text

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit e006d21b3709ffdcd4bc29ff28bc2c72f30440be
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 16:05:05 2024 +0800

    fix: change gitlab issue components field to text
---
 backend/plugins/gitlab/models/issue.go             |  2 +-
 .../20240813_change_issue_component_type.go        | 40 ++++++++++++++++++++++
 .../gitlab/models/migrationscripts/register.go     |  1 +
 3 files changed, 42 insertions(+), 1 deletion(-)

diff --git a/backend/plugins/gitlab/models/issue.go b/backend/plugins/gitlab/models/issue.go
index 5d57d6806..36d66b5cd 100644
--- a/backend/plugins/gitlab/models/issue.go
+++ b/backend/plugins/gitlab/models/issue.go
@@ -45,7 +45,7 @@ type GitlabIssue struct {
 	GitlabCreatedAt time.Time
 	GitlabUpdatedAt time.Time `gorm:"index"`
 	Severity        string    `gorm:"type:varchar(255)"`
-	Component       string    `gorm:"type:varchar(255)"`
+	Component       string    `gorm:"type:text"`
 	TimeEstimate    *int64
 	TotalTimeSpent  *int64
 	common.NoPKModel
diff --git a/backend/plugins/gitlab/models/migrationscripts/20240813_change_issue_component_type.go b/backend/plugins/gitlab/models/migrationscripts/20240813_change_issue_component_type.go
new file mode 100644
index 000000000..08c88ac29
--- /dev/null
+++ b/backend/plugins/gitlab/models/migrationscripts/20240813_change_issue_component_type.go
@@ -0,0 +1,40 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+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.
+*/
+
+package migrationscripts
+
+import (
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
+	"github.com/apache/incubator-devlake/core/plugin"
+)
+
+var _ plugin.MigrationScript = (*changeIssueComponentType)(nil)
+
+type changeIssueComponentType struct{}
+
+func (script *changeIssueComponentType) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("_tool_gitlab_issues", "components", "text")
+}
+
+func (*changeIssueComponentType) Version() uint64 {
+	return 20240813154323
+}
+
+func (*changeIssueComponentType) Name() string {
+	return "change _tool_gitlab_issues.components type to text"
+}
diff --git a/backend/plugins/gitlab/models/migrationscripts/register.go b/backend/plugins/gitlab/models/migrationscripts/register.go
index 24af299b0..8fda16c47 100644
--- a/backend/plugins/gitlab/models/migrationscripts/register.go
+++ b/backend/plugins/gitlab/models/migrationscripts/register.go
@@ -50,5 +50,6 @@ func All() []plugin.MigrationScript {
 		new(addWebUrlToGitlabPipelineProject),
 		new(addGitlabAssignee),
 		new(addGitlabAssigneeAndReviewerPrimaryKey),
+		new(changeIssueComponentType),
 	}
 }


(incubator-devlake) 09/19: fix: gitub deployment unit test

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit e4e40bef6bab4c767c72c1bc95a9ac110001e1a7
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Thu Aug 8 15:15:58 2024 +0800

    fix: gitub deployment unit test
---
 .../raw_tables/_raw_github_graphql_deployment.csv  |   8 +-
 .../snapshot_tables/_tool_github_deployments.csv   | 105 +--------------------
 .../snapshot_tables/cicd_deployment_commits.csv    | 105 +--------------------
 .../e2e/snapshot_tables/cicd_deployments.csv       | 105 +--------------------
 backend/plugins/github_graphql/impl/impl.go        |   6 ++
 .../migrationscripts/20240808_flush_rawdata.go     |  51 ++++++++++
 .../model/migrationscripts/register.go             |  29 ++++++
 7 files changed, 106 insertions(+), 303 deletions(-)

diff --git a/backend/plugins/github_graphql/e2e/raw_tables/_raw_github_graphql_deployment.csv b/backend/plugins/github_graphql/e2e/raw_tables/_raw_github_graphql_deployment.csv
index d4e951a8d..b078e7092 100644
--- a/backend/plugins/github_graphql/e2e/raw_tables/_raw_github_graphql_deployment.csv
+++ b/backend/plugins/github_graphql/e2e/raw_tables/_raw_github_graphql_deployment.csv
@@ -1,4 +1,6 @@
 "id","params","data","url","input","created_at"
-1,"{""ConnectionId"":1,""Name"":""apache/spark""}","{""RateLimit"":{""Cost"":1},""Repository"":{""Deployments"":{""TotalCount"":0,""PageInfo"":{""endCursor"":"""",""hasNextPage"":false},""Deployments"":[]}}}","query($name:String!$owner:String!$pageSize:Int!$skipCursor:String){rateLimit{cost},repository(owner: $owner, name: $name){deployments(first: $pageSize, after: $skipCursor, orderBy: {field: CREATED_AT, direction: DESC}){totalCount,pageInfo{endCursor,hasNextPage},nodes{task,id,commit [...]
-3,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}","{""RateLimit"":{""Cost"":1},""Repository"":{""Deployments"":{""TotalCount"":265,""PageInfo"":{""endCursor"":""Y3Vyc29yOnYyOpK5MjAyMy0wNS0yN1QwODoxNjoyNCswODowMM428BxU"",""hasNextPage"":true},""Deployments"":[{""Task"":""deploy"",""Id"":""DE_kwDOFAKDls5Lf8re"",""CommitOid"":""1ed90f394afc0965a0fc9672ee92ba107e40eeaa"",""Environment"":""github-pages"",""State"":""ACTIVE"",""DatabaseId"":1266666206,""Description"":"""",""Payload"":"""" [...]
-5,"{""ConnectionId"":1,""Name"":""facebook/react""}","{""RateLimit"":{""Cost"":1},""Repository"":{""Deployments"":{""TotalCount"":143,""PageInfo"":{""endCursor"":""Y3Vyc29yOnYyOpK5MjAxNi0xMC0yN1QyMDoxODozOCswODowMM4A7usA"",""hasNextPage"":true},""Deployments"":[{""Task"":""deploy"",""Id"":""MDEwOkRlcGxveW1lbnQ1MzIxNDQ3Mg=="",""CommitOid"":""d027eca037f06f682f667597bd68a0cd638e4f2e"",""Environment"":""github-pages"",""State"":""ACTIVE"",""DatabaseId"":53214472,""Description"":"""",""Paylo [...]
+5,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}","{""Task"":""deploy"",""Id"":""DE_kwDOFAKDls5jmQjJ"",""CommitOid"":""5f64bfed25d7ab4ae0840357ec56890f4da27def"",""Environment"":""github-pages"",""State"":""INACTIVE"",""DatabaseId"":1670973641,""Description"":"""",""Payload"":"""",""Ref"":{""ID"":""MDM6UmVmMzM1NzA5MDc4OnJlZnMvaGVhZHMvZ2gtcGFnZXM="",""Name"":""gh-pages"",""Prefix"":""refs/heads/""},""LatestStatus"":{""Id"":""DES_kwDOFAKDls78VYGk"",""State"":""INACTIVE"",""updatedAt"" [...]
+4,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}","{""Task"":""deploy"",""Id"":""DE_kwDOFAKDls5k72wd"",""CommitOid"":""c510f30dba35481866f55dc6f4ea94bb3ff5a7ae"",""Environment"":""github-pages"",""State"":""INACTIVE"",""DatabaseId"":1693412381,""Description"":"""",""Payload"":"""",""Ref"":{""ID"":""MDM6UmVmMzM1NzA5MDc4OnJlZnMvaGVhZHMvZ2gtcGFnZXM="",""Name"":""gh-pages"",""Prefix"":""refs/heads/""},""LatestStatus"":{""Id"":""DES_kwDOFAKDls78zSAf"",""State"":""INACTIVE"",""updatedAt"" [...]
+3,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}","{""Task"":""deploy"",""Id"":""DE_kwDOFAKDls5lF2XZ"",""CommitOid"":""3f8aa35aa5d792e9890c804ba629c065f8609c7a"",""Environment"":""github-pages"",""State"":""INACTIVE"",""DatabaseId"":1696032217,""Description"":"""",""Payload"":"""",""Ref"":{""ID"":""MDM6UmVmMzM1NzA5MDc4OnJlZnMvaGVhZHMvZ2gtcGFnZXM="",""Name"":""gh-pages"",""Prefix"":""refs/heads/""},""LatestStatus"":{""Id"":""DES_kwDOFAKDls79uA1r"",""State"":""INACTIVE"",""updatedAt"" [...]
+2,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}","{""Task"":""deploy"",""Id"":""DE_kwDOFAKDls5lZH1E"",""CommitOid"":""7a4d4b248e85a148f0bec8bc7fd480ed3c396b35"",""Environment"":""github-pages"",""State"":""INACTIVE"",""DatabaseId"":1701084484,""Description"":"""",""Payload"":"""",""Ref"":{""ID"":""MDM6UmVmMzM1NzA5MDc4OnJlZnMvaGVhZHMvZ2gtcGFnZXM="",""Name"":""gh-pages"",""Prefix"":""refs/heads/""},""LatestStatus"":{""Id"":""DES_kwDOFAKDls7-yhlW"",""State"":""INACTIVE"",""updatedAt"" [...]
+1,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}","{""Task"":""deploy"",""Id"":""DE_kwDOFAKDls5lv0SB"",""CommitOid"":""c0cfe86acc9ee2c2d0e64a5f1276e1ac3cf1f5c6"",""Environment"":""github-pages"",""State"":""ACTIVE"",""DatabaseId"":1707033729,""Description"":"""",""Payload"":"""",""Ref"":{""ID"":""MDM6UmVmMzM1NzA5MDc4OnJlZnMvaGVhZHMvZ2gtcGFnZXM="",""Name"":""gh-pages"",""Prefix"":""refs/heads/""},""LatestStatus"":{""Id"":""DES_kwDOFAKDls7-yhk8"",""State"":""SUCCESS"",""updatedAt"":"" [...]
diff --git a/backend/plugins/github_graphql/e2e/snapshot_tables/_tool_github_deployments.csv b/backend/plugins/github_graphql/e2e/snapshot_tables/_tool_github_deployments.csv
index e77a923b3..783aa9f51 100644
--- a/backend/plugins/github_graphql/e2e/snapshot_tables/_tool_github_deployments.csv
+++ b/backend/plugins/github_graphql/e2e/snapshot_tables/_tool_github_deployments.csv
@@ -1,101 +1,6 @@
 connection_id,id,github_id,display_title,url,database_id,commit_oid,description,environment,state,latest_status_state,latest_updated_date,repository_id,repository_name,repository_url,ref_name,payload,created_date,updated_date
-1,DE_kwDOFAKDls4-0X1l,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1053916517,942b8db519348dbfbaecb20f50e0fbc6b68ed0c9,,github-pages,INACTIVE,INACTIVE,2023-09-07T00:15:41.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-01T00:16:30.000+00:00,2023-09-07T00:15:41.000+00:00
-1,DE_kwDOFAKDls4-6eZm,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1055516262,8520b88b703d54813466496f7fd92f0a7d3969af,,github-pages,FAILURE,FAILURE,2023-09-02T00:28:21.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-02T00:18:09.000+00:00,2023-09-02T00:28:21.000+00:00
-1,DE_kwDOFAKDls4-F5fW,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1041733590,34437945a29efbd0be8421481b9e04fe831ad19e,,github-pages,INACTIVE,INACTIVE,2023-08-25T00:15:23.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-24T00:15:06.000+00:00,2023-08-25T00:15:23.000+00:00
-1,DE_kwDOFAKDls4-M3Q2,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1043559478,8e11f14ee7b7b40bfcd597f331491220b26045d4,,github-pages,INACTIVE,INACTIVE,2023-08-29T00:15:35.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-25T00:15:03.000+00:00,2023-08-29T00:15:35.000+00:00
-1,DE_kwDOFAKDls4-fUUV,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1048397077,8c57a0107b4e9d499098d59f0305a8a328c174b2,,github-pages,INACTIVE,INACTIVE,2023-08-30T00:16:04.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-29T00:15:14.000+00:00,2023-08-30T00:16:04.000+00:00
-1,DE_kwDOFAKDls4-maPb,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1050256347,abcc5e363aebebd9e8a7d9f2f36ea4372e8a8931,,github-pages,INACTIVE,INACTIVE,2023-09-01T00:16:49.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-30T00:15:45.000+00:00,2023-09-01T00:16:49.000+00:00
-1,DE_kwDOFAKDls428BxU,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,921705556,b2d54aa49e68f052eeba67f49281b7956717b417,,github-pages,INACTIVE,INACTIVE,2023-06-01T00:22:26.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-05-27T00:16:24.000+00:00,2023-06-01T00:22:26.000+00:00
-1,DE_kwDOFAKDls431F9F,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,936664901,c5bf0eef7d588943572039df0b3b8b16e359e578,,github-pages,INACTIVE,INACTIVE,2023-06-09T00:20:50.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-08T00:17:20.000+00:00,2023-06-09T00:20:50.000+00:00
-1,DE_kwDOFAKDls4369k5,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,938203449,48907628796ce6b11dc32b23cbd2d8c376e92f5e,,github-pages,INACTIVE,INACTIVE,2023-06-13T00:17:51.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-09T00:20:28.000+00:00,2023-06-13T00:17:51.000+00:00
-1,DE_kwDOFAKDls43R2Fh,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,927424865,f64fa44982bef77be35c164c23c2fa52169aa08f,,github-pages,INACTIVE,INACTIVE,2023-06-02T00:18:20.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-01T00:22:06.000+00:00,2023-06-02T00:18:20.000+00:00
-1,DE_kwDOFAKDls43YB2g,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,929045920,4f8c8bb26762b490e05f6d1db9170f406c508ee1,,github-pages,INACTIVE,INACTIVE,2023-06-03T00:17:24.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-02T00:18:02.000+00:00,2023-06-03T00:17:24.000+00:00
-1,DE_kwDOFAKDls43dgxv,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,930483311,769fe5204026013264b967d001ea2b374eb98479,,github-pages,INACTIVE,INACTIVE,2023-06-07T00:17:41.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-03T00:17:04.000+00:00,2023-06-07T00:17:41.000+00:00
-1,DE_kwDOFAKDls43uzci,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,935016226,7f691d305a3e060b4674df55348b614e943de6dc,,github-pages,INACTIVE,INACTIVE,2023-06-08T00:17:44.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-07T00:17:20.000+00:00,2023-06-08T00:17:44.000+00:00
-1,DE_kwDOFAKDls447-8H,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,955248391,be935f4d3990fa3250b9686c6b3e772c1b6c9867,,github-pages,INACTIVE,INACTIVE,2023-06-23T00:20:41.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-22T00:17:39.000+00:00,2023-06-23T00:20:41.000+00:00
-1,DE_kwDOFAKDls44Loog,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,942574112,2fc56741255f1660eb58fa342c728c6098ce78a2,,github-pages,INACTIVE,INACTIVE,2023-06-14T00:16:45.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-13T00:17:31.000+00:00,2023-06-14T00:16:45.000+00:00
-1,DE_kwDOFAKDls44SDKD,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,944255619,5ba4435c75a95c93440b7d70c0134003a3a4935d,,github-pages,INACTIVE,INACTIVE,2023-06-15T00:17:17.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-14T00:16:26.000+00:00,2023-06-15T00:17:17.000+00:00
-1,DE_kwDOFAKDls44YePw,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,945939440,c0aeae75ea40855e6f4e81cd1b7739488bb128d8,,github-pages,INACTIVE,INACTIVE,2023-06-16T00:17:29.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-15T00:16:56.000+00:00,2023-06-16T00:17:29.000+00:00
-1,DE_kwDOFAKDls44ey8W,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,947597078,2a1235a5b7f37c87a9acdbe3f2016147738155b3,,github-pages,INACTIVE,INACTIVE,2023-06-17T00:17:13.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-16T00:17:09.000+00:00,2023-06-17T00:17:13.000+00:00
-1,DE_kwDOFAKDls44kcjz,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,949078259,a01ed5cd5c8ef8973cfb16ba8de371cc816f4ee8,,github-pages,INACTIVE,INACTIVE,2023-06-22T00:17:58.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-17T00:16:52.000+00:00,2023-06-22T00:17:58.000+00:00
-1,DE_kwDOFAKDls451yOJ,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,970400649,58bb9fb72acc02250dc040fa0d7afdd2dab6a671,,github-pages,INACTIVE,INACTIVE,2023-07-06T00:20:04.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-04T00:19:01.000+00:00,2023-07-06T00:20:04.000+00:00
-1,DE_kwDOFAKDls45CRKd,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,956895901,a45d8dc853b36e781a7ad3b0f0c6229db9aa0fa2,,github-pages,INACTIVE,INACTIVE,2023-06-27T00:20:33.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-23T00:20:21.000+00:00,2023-06-27T00:20:33.000+00:00
-1,DE_kwDOFAKDls45S-1d,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,961277277,026603017e6a073a36084b572433a6eb3761db21,,github-pages,INACTIVE,INACTIVE,2023-06-30T00:17:53.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-27T00:19:09.000+00:00,2023-06-30T00:17:53.000+00:00
-1,DE_kwDOFAKDls45fwrq,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,964627178,8a912915b9d138a3c972bd5901f6186472d8b548,,github-pages,ACTIVE,SUCCESS,2023-06-29T00:19:09.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-29T00:18:47.000+00:00,2023-06-29T00:18:47.000+00:00
-1,DE_kwDOFAKDls45lxAT,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,966201363,ab955349c9dc5da065fe9e1912cf39981eda4c6c,,github-pages,INACTIVE,INACTIVE,2023-07-01T00:21:13.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-06-30T00:17:34.000+00:00,2023-07-01T00:21:13.000+00:00
-1,DE_kwDOFAKDls45rSde,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,967649118,5a9e02f82c9b22bf11075d1d2437b12ad5e55f82,,github-pages,INACTIVE,INACTIVE,2023-07-04T00:19:21.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-01T00:20:51.000+00:00,2023-07-04T00:19:21.000+00:00
-1,DE_kwDOFAKDls460IDS,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,986742994,96e88d5f8d89a3208869ff1011e6711adcb05d4f,,github-pages,INACTIVE,INACTIVE,2023-07-19T00:24:15.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-16T00:21:07.000+00:00,2023-07-19T00:24:15.000+00:00
-1,DE_kwDOFAKDls46BQnu,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,973408750,3204aed3e772d69c4edefc319596e9efa2a43629,,github-pages,INACTIVE,INACTIVE,2023-07-08T00:19:27.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-06T00:19:44.000+00:00,2023-07-08T00:19:27.000+00:00
-1,DE_kwDOFAKDls46NDBy,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,976498802,aad308176b00ab742a23bba581c2e6cb276fc450,,github-pages,INACTIVE,INACTIVE,2023-07-11T00:19:32.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-08T00:19:07.000+00:00,2023-07-11T00:19:32.000+00:00
-1,DE_kwDOFAKDls46YeJ3,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,979493495,e29c7899f4095b901c22f0b80ba8d1d9ea5b581d,,github-pages,INACTIVE,INACTIVE,2023-07-12T00:21:17.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-11T00:19:11.000+00:00,2023-07-12T00:21:17.000+00:00
-1,DE_kwDOFAKDls46fDDn,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,981217511,cc65c6735ff75f35a9efeddbe4ee141e9dca732d,,github-pages,INACTIVE,INACTIVE,2023-07-13T00:19:21.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-12T00:20:55.000+00:00,2023-07-13T00:19:21.000+00:00
-1,DE_kwDOFAKDls46le2q,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,982904234,8edfd0bf552ad15eaab5304fe4587404d03037cb,,github-pages,INACTIVE,INACTIVE,2023-07-14T00:20:00.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-13T00:19:02.000+00:00,2023-07-14T00:20:00.000+00:00
-1,DE_kwDOFAKDls46r7bJ,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,984594121,eb4b26541637b70a83f5702061b5d7190d11f8e7,,github-pages,INACTIVE,INACTIVE,2023-07-15T00:19:07.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-14T00:19:40.000+00:00,2023-07-15T00:19:07.000+00:00
-1,DE_kwDOFAKDls46xjZH,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,986068551,496fac5d87d0775f87662dcce2c1db9dcbd6b2e4,,github-pages,INACTIVE,INACTIVE,2023-07-16T00:21:28.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-15T00:18:46.000+00:00,2023-07-16T00:21:28.000+00:00
-1,DE_kwDOFAKDls47DkeG,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,990791558,0c115c5da24b37d50ebef0f33eff0dc583ee3e5d,,github-pages,INACTIVE,INACTIVE,2023-07-20T00:18:20.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-19T00:23:52.000+00:00,2023-07-20T00:18:20.000+00:00
-1,DE_kwDOFAKDls47KH83,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,992509751,ae128b0218706368b62e46b9a667722c24380988,,github-pages,INACTIVE,INACTIVE,2023-07-21T00:17:36.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-20T00:17:54.000+00:00,2023-07-21T00:17:36.000+00:00
-1,DE_kwDOFAKDls47QpmU,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,994220436,a3537c57b409351dc805b35de01bde86f8146553,,github-pages,INACTIVE,INACTIVE,2023-07-22T00:18:09.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-21T00:17:14.000+00:00,2023-07-22T00:18:09.000+00:00
-1,DE_kwDOFAKDls47WW7g,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,995716832,45254000796a1fcdca453cfb1301eddb16eada60,,github-pages,INACTIVE,INACTIVE,2023-07-26T00:17:57.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-22T00:17:47.000+00:00,2023-07-26T00:17:57.000+00:00
-1,DE_kwDOFAKDls47omvS,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1000500178,d370ca5ad7a33c312cf5a0461523c517c58e8d91,,github-pages,INACTIVE,INACTIVE,2023-08-01T00:20:12.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-07-26T00:17:35.000+00:00,2023-08-01T00:20:12.000+00:00
-1,DE_kwDOFAKDls48HRNq,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1008538474,14cbe38bb0695bef1adf37cc4a964316c4dbd158,,github-pages,INACTIVE,INACTIVE,2023-08-03T00:17:06.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-01T00:19:37.000+00:00,2023-08-03T00:17:06.000+00:00
-1,DE_kwDOFAKDls48UdaU,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1011996308,08405a6e4a1def2ec7e1a233ab287e644fdf8332,,github-pages,INACTIVE,INACTIVE,2023-08-05T00:17:22.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-03T00:16:43.000+00:00,2023-08-05T00:17:22.000+00:00
-1,DE_kwDOFAKDls48g4WQ,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1015252368,0e3b13ce6257068d02d093a5ecf9872a03371fec,,github-pages,INACTIVE,INACTIVE,2023-08-06T00:16:49.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-05T00:16:57.000+00:00,2023-08-06T00:16:49.000+00:00
-1,DE_kwDOFAKDls48jhS-,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1015944382,40180543c4dfbd456432080b060a0883951c6e61,,github-pages,INACTIVE,INACTIVE,2023-08-15T00:15:11.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-06T00:16:29.000+00:00,2023-08-15T00:15:11.000+00:00
-1,DE_kwDOFAKDls49-3vy,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1039891442,e86eaa63b43fbadf4e6baca2085ded2b41b8427a,,github-pages,INACTIVE,INACTIVE,2023-08-24T00:15:25.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-23T00:14:50.000+00:00,2023-08-24T00:15:25.000+00:00
-1,DE_kwDOFAKDls4932lH,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1038051655,42cdf09c0b520066603ad2fbe2e3a35df8646390,,github-pages,INACTIVE,INACTIVE,2023-08-23T00:15:12.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-22T00:15:14.000+00:00,2023-08-23T00:15:12.000+00:00
-1,DE_kwDOFAKDls49SDiH,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1028143239,7c9369308e9252fa8bed5705bbf7a581eb6b84d0,,github-pages,INACTIVE,INACTIVE,2023-08-16T00:15:27.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-15T00:14:52.000+00:00,2023-08-16T00:15:27.000+00:00
-1,DE_kwDOFAKDls49YM2P,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1029754255,6ad0fc9d6c3a20f4c6ac051bc92da54ee1817551,,github-pages,INACTIVE,INACTIVE,2023-08-17T00:15:26.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-16T00:15:04.000+00:00,2023-08-17T00:15:26.000+00:00
-1,DE_kwDOFAKDls49e_9i,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1031536482,14cb7d352b0051ad0e9e6cf17b82ca7bb3ecd890,,github-pages,INACTIVE,INACTIVE,2023-08-18T00:15:30.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-17T00:15:04.000+00:00,2023-08-18T00:15:30.000+00:00
-1,DE_kwDOFAKDls49lrmt,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1033288109,4659b22e19a134ceccd156eaa9ae2c22f55f815e,,github-pages,INACTIVE,INACTIVE,2023-08-22T00:15:34.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-08-18T00:15:06.000+00:00,2023-08-22T00:15:34.000+00:00
-1,DE_kwDOFAKDls4_1dnL,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1070979531,fb1589c3956013e97727f92bbc0e71ce7ee56aed,,github-pages,INACTIVE,INACTIVE,2023-09-16T00:15:18.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-13T00:15:51.000+00:00,2023-09-16T00:15:18.000+00:00
-1,DE_kwDOFAKDls4_MqN_,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1060283263,7fa8413a2027d615e44af53d087ee9472d06d1cb,,github-pages,FAILURE,FAILURE,2023-09-06T00:26:10.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-06T00:15:52.000+00:00,2023-09-06T00:26:10.000+00:00
-1,DE_kwDOFAKDls4_T1aO,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1062164110,99e2ddcb6b13ff0805e2e381a48d82815a269be4,,github-pages,INACTIVE,INACTIVE,2023-09-09T00:15:31.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-07T00:15:15.000+00:00,2023-09-09T00:15:31.000+00:00
-1,DE_kwDOFAKDls4_hJ7a,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1065656026,dcb84a573c7fe5a3b90517288bcb52f4f1661eba,,github-pages,INACTIVE,INACTIVE,2023-09-10T00:16:45.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-09T00:15:12.000+00:00,2023-09-10T00:16:45.000+00:00
-1,DE_kwDOFAKDls4_kApz,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1066404467,3f344adb62f3c8687349e87ad7f9af6f8eac1e6b,,github-pages,INACTIVE,INACTIVE,2023-09-12T00:16:00.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-10T00:16:21.000+00:00,2023-09-12T00:16:00.000+00:00
-1,DE_kwDOFAKDls4_uDbG,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1069037254,930acbf0620d4eea14efd137628d2639c4def3c1,,github-pages,INACTIVE,INACTIVE,2023-09-13T00:16:12.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-12T00:15:39.000+00:00,2023-09-13T00:16:12.000+00:00
-1,DE_kwDOFAKDls5AEMh6,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1074841722,188ba3cb41942737f8f089cccd8954c1a7b5cad6,,github-pages,FAILURE,FAILURE,2023-09-15T00:26:02.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-15T00:15:45.000+00:00,2023-09-15T00:26:02.000+00:00
-1,DE_kwDOFAKDls5AKzQf,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1076573215,855bf2e050071508f06bc58045579b9f08b47342,,github-pages,INACTIVE,INACTIVE,2023-09-21T00:16:08.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-16T00:14:57.000+00:00,2023-09-21T00:16:08.000+00:00
-1,DE_kwDOFAKDls5Amtwp,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1083890729,f0c1e5adc1d83b6432cc35c653f26c5f1496a9d4,,github-pages,INACTIVE,INACTIVE,2023-09-22T00:16:32.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-21T00:15:44.000+00:00,2023-09-22T00:16:32.000+00:00
-1,DE_kwDOFAKDls5AuRmx,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1085872561,7fe5eadf7632567050de048529a00e258e4b4cdc,,github-pages,INACTIVE,INACTIVE,2023-09-26T00:17:09.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-22T00:16:06.000+00:00,2023-09-26T00:17:09.000+00:00
-1,DE_kwDOFAKDls5BCk6A,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1091194496,b6fb30a39744abf06860d3ad4702fe8284cf55e6,,github-pages,INACTIVE,INACTIVE,2023-09-28T00:16:11.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-26T00:16:43.000+00:00,2023-09-28T00:16:11.000+00:00
-1,DE_kwDOFAKDls5BR0LM,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1095189196,17bdf85c5086148ce5350d7e4bb79c013e16fcec,,github-pages,INACTIVE,INACTIVE,2023-10-07T00:16:18.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-09-28T00:15:50.000+00:00,2023-10-07T00:16:18.000+00:00
-1,DE_kwDOFAKDls5CJjV3,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1109800311,fd236c165277e019b05d51f2e03f75d6f2cc7928,,github-pages,INACTIVE,INACTIVE,2023-10-19T00:16:29.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-10-07T00:15:54.000+00:00,2023-10-19T00:16:29.000+00:00
-1,DE_kwDOFAKDls5D9bP0,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1140175860,694a45a1f412b2e55572952daef88927a518b89b,,github-pages,INACTIVE,INACTIVE,2023-10-31T00:16:37.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-10-26T00:15:52.000+00:00,2023-10-31T00:16:37.000+00:00
-1,DE_kwDOFAKDls5DRTm2,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1128610230,8affed656f7d0830a371d9b59936b65627ead55a,,github-pages,INACTIVE,INACTIVE,2023-10-20T00:16:39.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-10-19T00:16:01.000+00:00,2023-10-20T00:16:39.000+00:00
-1,DE_kwDOFAKDls5DZKEl,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1130668325,7be3beb668c5d8850288b75e8342e42aad557f98,,github-pages,INACTIVE,INACTIVE,2023-10-26T00:16:23.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-10-20T00:16:10.000+00:00,2023-10-26T00:16:23.000+00:00
-1,DE_kwDOFAKDls5E3lGD,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1155420547,6159fc23a9b96d5846d742cd813a08dd2924d6db,,github-pages,INACTIVE,INACTIVE,2023-11-08T00:16:49.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-04T00:15:44.000+00:00,2023-11-08T00:16:49.000+00:00
-1,DE_kwDOFAKDls5EaF4g,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1147690528,8d37260db0a017f1a2a625592d6d73b54ed94a6c,,github-pages,INACTIVE,INACTIVE,2023-11-01T00:17:56.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-10-31T00:16:11.000+00:00,2023-11-01T00:17:56.000+00:00
-1,DE_kwDOFAKDls5Eh_vv,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1149762543,28c780b1f67f5d4023c9146e9fab414a8ce63450,,github-pages,INACTIVE,INACTIVE,2023-11-02T00:16:33.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-01T00:17:34.000+00:00,2023-11-02T00:16:33.000+00:00
-1,DE_kwDOFAKDls5EpQ6Y,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1151667864,7cb4a7583ae2a34f5b8e1eb7b2f621d8c7ebe394,,github-pages,INACTIVE,INACTIVE,2023-11-04T00:16:11.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-02T00:16:09.000+00:00,2023-11-04T00:16:11.000+00:00
-1,DE_kwDOFAKDls5F7GQf,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1173120031,18271d01efbf56dbce94234ab1459921ec5605ed,,github-pages,INACTIVE,INACTIVE,2023-11-16T00:16:26.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-15T00:16:07.000+00:00,2023-11-16T00:16:26.000+00:00
-1,DE_kwDOFAKDls5FNxqw,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1161239216,46dde185a47185be665af62c98d9cf2f310fb969,,github-pages,INACTIVE,INACTIVE,2023-11-09T00:16:14.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-08T00:16:23.000+00:00,2023-11-09T00:16:14.000+00:00
-1,DE_kwDOFAKDls5FV6tO,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1163373390,cbe3177a5f79d7114eb05a68e91876e5a8d31430,,github-pages,INACTIVE,INACTIVE,2023-11-10T00:16:30.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-09T00:15:47.000+00:00,2023-11-10T00:16:30.000+00:00
-1,DE_kwDOFAKDls5Fd5Ef,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1165463839,04aa310661cb65d09dce6ae76f6775b572ea3072,,github-pages,INACTIVE,INACTIVE,2023-11-11T00:16:43.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-10T00:16:03.000+00:00,2023-11-11T00:16:43.000+00:00
-1,DE_kwDOFAKDls5FlAFD,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1167327555,0c1b78866580298d0f968303f2f66e8d609696aa,,github-pages,INACTIVE,INACTIVE,2023-11-14T00:16:29.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-11T00:16:18.000+00:00,2023-11-14T00:16:29.000+00:00
-1,DE_kwDOFAKDls5Fy_rA,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1170995904,147ef553a4267900a477b084c52d12d085f23c65,,github-pages,INACTIVE,INACTIVE,2023-11-15T00:16:30.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-14T00:16:03.000+00:00,2023-11-15T00:16:30.000+00:00
-1,DE_kwDOFAKDls5GC6zl,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1175170277,dbcfa5b011c1db46c7e83a0024fcc74ca900cb0a,,github-pages,INACTIVE,INACTIVE,2023-11-17T00:16:43.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-16T00:16:01.000+00:00,2023-11-17T00:16:43.000+00:00
-1,DE_kwDOFAKDls5GLBzz,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1177296115,d84ea7445a739b88821052b7ebf813d0d75368fc,,github-pages,INACTIVE,INACTIVE,2023-11-18T00:16:26.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-17T00:16:17.000+00:00,2023-11-18T00:16:26.000+00:00
-1,DE_kwDOFAKDls5GSXgv,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1179220015,4e19b35eebebdd7f4cf3d95af2a9c3b88816a7a7,,github-pages,INACTIVE,INACTIVE,2023-11-19T00:17:49.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-18T00:16:02.000+00:00,2023-11-19T00:17:49.000+00:00
-1,DE_kwDOFAKDls5GVnAC,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1180069890,c1ad6789f840e0d5619e1e9fd48315c090d9461d,,github-pages,INACTIVE,INACTIVE,2023-11-20T00:16:43.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-19T00:17:27.000+00:00,2023-11-20T00:16:43.000+00:00
-1,DE_kwDOFAKDls5GYzON,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1180906381,0399078818676e5e3e4b1ca82b18a7dd3ab38255,,github-pages,INACTIVE,INACTIVE,2023-11-21T00:16:57.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-20T00:16:25.000+00:00,2023-11-21T00:16:57.000+00:00
-1,DE_kwDOFAKDls5GgdAH,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1182912519,e653abc4555da073f82e4648d3c7db7c4c3a5e1f,,github-pages,INACTIVE,INACTIVE,2023-11-22T00:17:11.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-21T00:16:29.000+00:00,2023-11-22T00:17:11.000+00:00
-1,DE_kwDOFAKDls5GoqPS,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1185063890,0a2f55bd7e63191842697959addef0b22ab37765,,github-pages,INACTIVE,INACTIVE,2023-11-30T00:16:59.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-22T00:16:46.000+00:00,2023-11-30T00:16:59.000+00:00
-1,DE_kwDOFAKDls5HcS7M,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1198599884,66f73c01bdf9ffb7a97041dadae0eb3f6ddcaa58,,github-pages,INACTIVE,INACTIVE,2023-12-01T00:18:33.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-11-30T00:16:31.000+00:00,2023-12-01T00:18:33.000+00:00
-1,DE_kwDOFAKDls5HkuAR,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1200807953,c546473f98edae970398c161073c7e404e48b6e2,,github-pages,INACTIVE,INACTIVE,2023-12-02T00:16:12.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-01T00:18:09.000+00:00,2023-12-02T00:16:12.000+00:00
-1,DE_kwDOFAKDls5HsH2B,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1202748801,cff50c5fcda1d6acfe8982cfb3fb060f11205e75,,github-pages,INACTIVE,INACTIVE,2023-12-07T00:16:38.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-02T00:15:48.000+00:00,2023-12-07T00:16:38.000+00:00
-1,DE_kwDOFAKDls5I7br6,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1223539450,b5c90119fe5a2234338835d2a9b02a3908b21b4f,,github-pages,INACTIVE,INACTIVE,2023-12-15T00:17:01.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-14T00:16:09.000+00:00,2023-12-15T00:17:01.000+00:00
-1,DE_kwDOFAKDls5IMHvT,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1211136979,fed41ba3596915f8c7ee8cd2d38d591d081ce755,,github-pages,INACTIVE,INACTIVE,2023-12-08T00:17:07.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-07T00:16:14.000+00:00,2023-12-08T00:17:07.000+00:00
-1,DE_kwDOFAKDls5IUaRW,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1213310038,71b3ba5daeabb25cd50ef558ed28747f848c4374,,github-pages,INACTIVE,INACTIVE,2023-12-09T00:16:51.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-08T00:16:43.000+00:00,2023-12-09T00:16:51.000+00:00
-1,DE_kwDOFAKDls5Ibkgx,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1215186993,18de552c72f9c14b783c8ee668287268a382e620,,github-pages,INACTIVE,INACTIVE,2023-12-13T00:16:41.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-09T00:16:23.000+00:00,2023-12-13T00:16:41.000+00:00
-1,DE_kwDOFAKDls5Iy6gc,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1221306396,313ae8236674dcfae44528b14debf7e6f15eda47,,github-pages,INACTIVE,INACTIVE,2023-12-14T00:16:37.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-13T00:16:13.000+00:00,2023-12-14T00:16:37.000+00:00
-1,DE_kwDOFAKDls5JDoD7,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1225687291,52f5f97498e114074fb6c1dfaf2b9b875cfe9b25,,github-pages,INACTIVE,INACTIVE,2023-12-20T00:14:56.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-15T00:16:37.000+00:00,2023-12-20T00:14:56.000+00:00
-1,DE_kwDOFAKDls5JhXYj,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1233483299,62040941b61b474153b0246b77beaf592c97d4a2,,github-pages,INACTIVE,INACTIVE,2023-12-22T00:17:00.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-20T00:14:29.000+00:00,2023-12-22T00:17:00.000+00:00
-1,DE_kwDOFAKDls5JwkH4,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1237467640,14c3d04ce9c7ffdc0f6529fd083796965a2d9478,,github-pages,INACTIVE,INACTIVE,2024-01-03T00:16:39.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2023-12-22T00:16:33.000+00:00,2024-01-03T00:16:39.000+00:00
-1,DE_kwDOFAKDls5K4NUr,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1256248619,62a381a9a7a741fcaf7187443d0e4e80a73d0c90,,github-pages,INACTIVE,INACTIVE,2024-01-09T00:17:39.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-01-06T00:16:21.000+00:00,2024-01-09T00:17:39.000+00:00
-1,DE_kwDOFAKDls5Kivd3,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1250621303,41447587a0fb2263efa3a1361c3bbfff99b382d8,,github-pages,INACTIVE,INACTIVE,2024-01-04T00:17:27.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-01-03T00:16:14.000+00:00,2024-01-04T00:17:27.000+00:00
-1,DE_kwDOFAKDls5Kpzh2,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1252472950,049c311a03dc1734f94bb2476348e864d24f877d,,github-pages,INACTIVE,INACTIVE,2024-01-05T00:16:43.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-01-04T00:16:28.000+00:00,2024-01-05T00:16:43.000+00:00
-1,DE_kwDOFAKDls5KxQbd,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1254426333,0fe4aa9a860be1b7336509450d42c0ea7416bbd4,,github-pages,INACTIVE,INACTIVE,2024-01-06T00:16:46.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-01-05T00:16:19.000+00:00,2024-01-06T00:16:46.000+00:00
-1,DE_kwDOFAKDls5LG0Pt,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1260078061,51843a7a3167ee62667f5a9796d949b6ee5ea8ae,,github-pages,INACTIVE,INACTIVE,2024-01-10T00:17:08.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-01-09T00:17:11.000+00:00,2024-01-10T00:17:08.000+00:00
-1,DE_kwDOFAKDls5LPB2X,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1262230935,7a88a499f7efccb1ac867767e8527e148319a374,,github-pages,INACTIVE,INACTIVE,2024-01-11T00:17:28.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-01-10T00:16:38.000+00:00,2024-01-11T00:17:28.000+00:00
-1,DE_kwDOFAKDls5LXfIM,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1264448012,d47b0584c244b7e03b23007a7e0b4007cfa35e50,,github-pages,INACTIVE,INACTIVE,,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-01-11T00:17:04.000+00:00,2024-01-12T00:16:44.000+00:00
-1,DE_kwDOFAKDls5Lf8re,335709078,,https://github.com/facebook/OpenBIC/deployments/github-pages,1266666206,1ed90f394afc0965a0fc9672ee92ba107e40eeaa,,github-pages,ACTIVE,SUCCESS,2024-01-12T00:16:44.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-01-12T00:16:27.000+00:00,2024-01-12T00:16:44.000+00:00
+1,DE_kwDOFAKDls5jmQjJ,335709078,Deploying to gh-pages from @ facebook/OpenBIC@cc00015240209658cadae37a4c46698ff02ad78e 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,1670973641,5f64bfed25d7ab4ae0840357ec56890f4da27def,,github-pages,INACTIVE,INACTIVE,2024-08-02T00:18:13.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-07-24T00:18:51.000+00:00,2024-08-02T00:18:13.000+00:00
+1,DE_kwDOFAKDls5k72wd,335709078,Deploying to gh-pages from @ facebook/OpenBIC@efd9dd4dbee783343b0fe32b20d04d4ed68b1681 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,1693412381,c510f30dba35481866f55dc6f4ea94bb3ff5a7ae,,github-pages,INACTIVE,INACTIVE,2024-08-03T00:17:54.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-08-02T00:17:55.000+00:00,2024-08-03T00:17:54.000+00:00
+1,DE_kwDOFAKDls5lF2XZ,335709078,Deploying to gh-pages from @ facebook/OpenBIC@2c1c4c6f660961692a9736d0304f9fdb2db3a9e8 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,1696032217,3f8aa35aa5d792e9890c804ba629c065f8609c7a,,github-pages,INACTIVE,INACTIVE,2024-08-06T00:18:22.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-08-03T00:17:32.000+00:00,2024-08-06T00:18:22.000+00:00
+1,DE_kwDOFAKDls5lZH1E,335709078,Deploying to gh-pages from @ facebook/OpenBIC@fa848dcf1e18b9e6caea562ccecf282e0b52af39 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,1701084484,7a4d4b248e85a148f0bec8bc7fd480ed3c396b35,,github-pages,INACTIVE,INACTIVE,2024-08-08T00:18:13.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-08-06T00:18:05.000+00:00,2024-08-08T00:18:13.000+00:00
+1,DE_kwDOFAKDls5lv0SB,335709078,Deploying to gh-pages from @ facebook/OpenBIC@b25ee19a81f110e744af6fb62870dcca3cba93d7 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,1707033729,c0cfe86acc9ee2c2d0e64a5f1276e1ac3cf1f5c6,,github-pages,ACTIVE,SUCCESS,2024-08-08T00:18:12.000+00:00,MDEwOlJlcG9zaXRvcnkzMzU3MDkwNzg=,OpenBIC,https://github.com/facebook/OpenBIC,gh-pages,,2024-08-08T00:17:56.000+00:00,2024-08-08T00:18:13.000+00:00
diff --git a/backend/plugins/github_graphql/e2e/snapshot_tables/cicd_deployment_commits.csv b/backend/plugins/github_graphql/e2e/snapshot_tables/cicd_deployment_commits.csv
index 1d091ab4f..0b80b3c12 100644
--- a/backend/plugins/github_graphql/e2e/snapshot_tables/cicd_deployment_commits.csv
+++ b/backend/plugins/github_graphql/e2e/snapshot_tables/cicd_deployment_commits.csv
@@ -1,101 +1,6 @@
 id,commit_sha,cicd_scope_id,cicd_deployment_id,name,result,status,original_status,environment,original_environment,created_date,queued_date,started_date,finished_date,commit_msg,ref_name,repo_id,repo_url,prev_success_deployment_commit_id,display_title,url,_raw_data_params,_raw_data_table,_raw_data_id,_raw_data_remark
-github:GithubDeployment:1:DE_kwDOFAKDls4-0X1l,942b8db519348dbfbaecb20f50e0fbc6b68ed0c9,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4-0X1l,942b8db519348dbfbaecb20f50e0fbc6b68ed0c9,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-01T00:16:30.000+00:00,,2023-09-01T00:16:30.000+00:00,2023-09-07T00:15:41.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4-6eZm,8520b88b703d54813466496f7fd92f0a7d3969af,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4-6eZm,8520b88b703d54813466496f7fd92f0a7d3969af,FAILURE,DONE,FAILURE,github-pages,github-pages,2023-09-02T00:18:09.000+00:00,,2023-09-02T00:18:09.000+00:00,2023-09-02T00:28:21.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connect [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4-F5fW,34437945a29efbd0be8421481b9e04fe831ad19e,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4-F5fW,34437945a29efbd0be8421481b9e04fe831ad19e,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-24T00:15:06.000+00:00,,2023-08-24T00:15:06.000+00:00,2023-08-25T00:15:23.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4-M3Q2,8e11f14ee7b7b40bfcd597f331491220b26045d4,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4-M3Q2,8e11f14ee7b7b40bfcd597f331491220b26045d4,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-25T00:15:03.000+00:00,,2023-08-25T00:15:03.000+00:00,2023-08-29T00:15:35.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4-fUUV,8c57a0107b4e9d499098d59f0305a8a328c174b2,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4-fUUV,8c57a0107b4e9d499098d59f0305a8a328c174b2,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-29T00:15:14.000+00:00,,2023-08-29T00:15:14.000+00:00,2023-08-30T00:16:04.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4-maPb,abcc5e363aebebd9e8a7d9f2f36ea4372e8a8931,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4-maPb,abcc5e363aebebd9e8a7d9f2f36ea4372e8a8931,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-30T00:15:45.000+00:00,,2023-08-30T00:15:45.000+00:00,2023-09-01T00:16:49.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls428BxU,b2d54aa49e68f052eeba67f49281b7956717b417,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls428BxU,b2d54aa49e68f052eeba67f49281b7956717b417,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-05-27T00:16:24.000+00:00,,2023-05-27T00:16:24.000+00:00,2023-06-01T00:22:26.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls431F9F,c5bf0eef7d588943572039df0b3b8b16e359e578,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls431F9F,c5bf0eef7d588943572039df0b3b8b16e359e578,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-08T00:17:20.000+00:00,,2023-06-08T00:17:20.000+00:00,2023-06-09T00:20:50.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4369k5,48907628796ce6b11dc32b23cbd2d8c376e92f5e,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4369k5,48907628796ce6b11dc32b23cbd2d8c376e92f5e,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-09T00:20:28.000+00:00,,2023-06-09T00:20:28.000+00:00,2023-06-13T00:17:51.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls43R2Fh,f64fa44982bef77be35c164c23c2fa52169aa08f,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls43R2Fh,f64fa44982bef77be35c164c23c2fa52169aa08f,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-01T00:22:06.000+00:00,,2023-06-01T00:22:06.000+00:00,2023-06-02T00:18:20.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls43YB2g,4f8c8bb26762b490e05f6d1db9170f406c508ee1,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls43YB2g,4f8c8bb26762b490e05f6d1db9170f406c508ee1,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-02T00:18:02.000+00:00,,2023-06-02T00:18:02.000+00:00,2023-06-03T00:17:24.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls43dgxv,769fe5204026013264b967d001ea2b374eb98479,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls43dgxv,769fe5204026013264b967d001ea2b374eb98479,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-03T00:17:04.000+00:00,,2023-06-03T00:17:04.000+00:00,2023-06-07T00:17:41.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls43uzci,7f691d305a3e060b4674df55348b614e943de6dc,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls43uzci,7f691d305a3e060b4674df55348b614e943de6dc,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-07T00:17:20.000+00:00,,2023-06-07T00:17:20.000+00:00,2023-06-08T00:17:44.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls447-8H,be935f4d3990fa3250b9686c6b3e772c1b6c9867,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls447-8H,be935f4d3990fa3250b9686c6b3e772c1b6c9867,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-22T00:17:39.000+00:00,,2023-06-22T00:17:39.000+00:00,2023-06-23T00:20:41.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls44Loog,2fc56741255f1660eb58fa342c728c6098ce78a2,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls44Loog,2fc56741255f1660eb58fa342c728c6098ce78a2,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-13T00:17:31.000+00:00,,2023-06-13T00:17:31.000+00:00,2023-06-14T00:16:45.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls44SDKD,5ba4435c75a95c93440b7d70c0134003a3a4935d,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls44SDKD,5ba4435c75a95c93440b7d70c0134003a3a4935d,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-14T00:16:26.000+00:00,,2023-06-14T00:16:26.000+00:00,2023-06-15T00:17:17.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls44YePw,c0aeae75ea40855e6f4e81cd1b7739488bb128d8,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls44YePw,c0aeae75ea40855e6f4e81cd1b7739488bb128d8,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-15T00:16:56.000+00:00,,2023-06-15T00:16:56.000+00:00,2023-06-16T00:17:29.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls44ey8W,2a1235a5b7f37c87a9acdbe3f2016147738155b3,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls44ey8W,2a1235a5b7f37c87a9acdbe3f2016147738155b3,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-16T00:17:09.000+00:00,,2023-06-16T00:17:09.000+00:00,2023-06-17T00:17:13.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls44kcjz,a01ed5cd5c8ef8973cfb16ba8de371cc816f4ee8,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls44kcjz,a01ed5cd5c8ef8973cfb16ba8de371cc816f4ee8,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-17T00:16:52.000+00:00,,2023-06-17T00:16:52.000+00:00,2023-06-22T00:17:58.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls451yOJ,58bb9fb72acc02250dc040fa0d7afdd2dab6a671,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls451yOJ,58bb9fb72acc02250dc040fa0d7afdd2dab6a671,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-04T00:19:01.000+00:00,,2023-07-04T00:19:01.000+00:00,2023-07-06T00:20:04.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls45CRKd,a45d8dc853b36e781a7ad3b0f0c6229db9aa0fa2,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls45CRKd,a45d8dc853b36e781a7ad3b0f0c6229db9aa0fa2,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-23T00:20:21.000+00:00,,2023-06-23T00:20:21.000+00:00,2023-06-27T00:20:33.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls45S-1d,026603017e6a073a36084b572433a6eb3761db21,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls45S-1d,026603017e6a073a36084b572433a6eb3761db21,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-27T00:19:09.000+00:00,,2023-06-27T00:19:09.000+00:00,2023-06-30T00:17:53.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls45fwrq,8a912915b9d138a3c972bd5901f6186472d8b548,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls45fwrq,8a912915b9d138a3c972bd5901f6186472d8b548,SUCCESS,DONE,ACTIVE,github-pages,github-pages,2023-06-29T00:18:47.000+00:00,,2023-06-29T00:18:47.000+00:00,2023-06-29T00:18:47.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connecti [...]
-github:GithubDeployment:1:DE_kwDOFAKDls45lxAT,ab955349c9dc5da065fe9e1912cf39981eda4c6c,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls45lxAT,ab955349c9dc5da065fe9e1912cf39981eda4c6c,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-06-30T00:17:34.000+00:00,,2023-06-30T00:17:34.000+00:00,2023-07-01T00:21:13.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls45rSde,5a9e02f82c9b22bf11075d1d2437b12ad5e55f82,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls45rSde,5a9e02f82c9b22bf11075d1d2437b12ad5e55f82,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-01T00:20:51.000+00:00,,2023-07-01T00:20:51.000+00:00,2023-07-04T00:19:21.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls460IDS,96e88d5f8d89a3208869ff1011e6711adcb05d4f,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls460IDS,96e88d5f8d89a3208869ff1011e6711adcb05d4f,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-16T00:21:07.000+00:00,,2023-07-16T00:21:07.000+00:00,2023-07-19T00:24:15.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls46BQnu,3204aed3e772d69c4edefc319596e9efa2a43629,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls46BQnu,3204aed3e772d69c4edefc319596e9efa2a43629,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-06T00:19:44.000+00:00,,2023-07-06T00:19:44.000+00:00,2023-07-08T00:19:27.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls46NDBy,aad308176b00ab742a23bba581c2e6cb276fc450,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls46NDBy,aad308176b00ab742a23bba581c2e6cb276fc450,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-08T00:19:07.000+00:00,,2023-07-08T00:19:07.000+00:00,2023-07-11T00:19:32.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls46YeJ3,e29c7899f4095b901c22f0b80ba8d1d9ea5b581d,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls46YeJ3,e29c7899f4095b901c22f0b80ba8d1d9ea5b581d,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-11T00:19:11.000+00:00,,2023-07-11T00:19:11.000+00:00,2023-07-12T00:21:17.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls46fDDn,cc65c6735ff75f35a9efeddbe4ee141e9dca732d,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls46fDDn,cc65c6735ff75f35a9efeddbe4ee141e9dca732d,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-12T00:20:55.000+00:00,,2023-07-12T00:20:55.000+00:00,2023-07-13T00:19:21.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls46le2q,8edfd0bf552ad15eaab5304fe4587404d03037cb,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls46le2q,8edfd0bf552ad15eaab5304fe4587404d03037cb,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-13T00:19:02.000+00:00,,2023-07-13T00:19:02.000+00:00,2023-07-14T00:20:00.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls46r7bJ,eb4b26541637b70a83f5702061b5d7190d11f8e7,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls46r7bJ,eb4b26541637b70a83f5702061b5d7190d11f8e7,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-14T00:19:40.000+00:00,,2023-07-14T00:19:40.000+00:00,2023-07-15T00:19:07.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls46xjZH,496fac5d87d0775f87662dcce2c1db9dcbd6b2e4,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls46xjZH,496fac5d87d0775f87662dcce2c1db9dcbd6b2e4,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-15T00:18:46.000+00:00,,2023-07-15T00:18:46.000+00:00,2023-07-16T00:21:28.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls47DkeG,0c115c5da24b37d50ebef0f33eff0dc583ee3e5d,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls47DkeG,0c115c5da24b37d50ebef0f33eff0dc583ee3e5d,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-19T00:23:52.000+00:00,,2023-07-19T00:23:52.000+00:00,2023-07-20T00:18:20.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls47KH83,ae128b0218706368b62e46b9a667722c24380988,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls47KH83,ae128b0218706368b62e46b9a667722c24380988,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-20T00:17:54.000+00:00,,2023-07-20T00:17:54.000+00:00,2023-07-21T00:17:36.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls47QpmU,a3537c57b409351dc805b35de01bde86f8146553,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls47QpmU,a3537c57b409351dc805b35de01bde86f8146553,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-21T00:17:14.000+00:00,,2023-07-21T00:17:14.000+00:00,2023-07-22T00:18:09.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls47WW7g,45254000796a1fcdca453cfb1301eddb16eada60,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls47WW7g,45254000796a1fcdca453cfb1301eddb16eada60,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-22T00:17:47.000+00:00,,2023-07-22T00:17:47.000+00:00,2023-07-26T00:17:57.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls47omvS,d370ca5ad7a33c312cf5a0461523c517c58e8d91,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls47omvS,d370ca5ad7a33c312cf5a0461523c517c58e8d91,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-07-26T00:17:35.000+00:00,,2023-07-26T00:17:35.000+00:00,2023-08-01T00:20:12.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls48HRNq,14cbe38bb0695bef1adf37cc4a964316c4dbd158,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls48HRNq,14cbe38bb0695bef1adf37cc4a964316c4dbd158,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-01T00:19:37.000+00:00,,2023-08-01T00:19:37.000+00:00,2023-08-03T00:17:06.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls48UdaU,08405a6e4a1def2ec7e1a233ab287e644fdf8332,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls48UdaU,08405a6e4a1def2ec7e1a233ab287e644fdf8332,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-03T00:16:43.000+00:00,,2023-08-03T00:16:43.000+00:00,2023-08-05T00:17:22.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls48g4WQ,0e3b13ce6257068d02d093a5ecf9872a03371fec,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls48g4WQ,0e3b13ce6257068d02d093a5ecf9872a03371fec,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-05T00:16:57.000+00:00,,2023-08-05T00:16:57.000+00:00,2023-08-06T00:16:49.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls48jhS-,40180543c4dfbd456432080b060a0883951c6e61,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls48jhS-,40180543c4dfbd456432080b060a0883951c6e61,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-06T00:16:29.000+00:00,,2023-08-06T00:16:29.000+00:00,2023-08-15T00:15:11.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls49-3vy,e86eaa63b43fbadf4e6baca2085ded2b41b8427a,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls49-3vy,e86eaa63b43fbadf4e6baca2085ded2b41b8427a,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-23T00:14:50.000+00:00,,2023-08-23T00:14:50.000+00:00,2023-08-24T00:15:25.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4932lH,42cdf09c0b520066603ad2fbe2e3a35df8646390,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4932lH,42cdf09c0b520066603ad2fbe2e3a35df8646390,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-22T00:15:14.000+00:00,,2023-08-22T00:15:14.000+00:00,2023-08-23T00:15:12.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls49SDiH,7c9369308e9252fa8bed5705bbf7a581eb6b84d0,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls49SDiH,7c9369308e9252fa8bed5705bbf7a581eb6b84d0,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-15T00:14:52.000+00:00,,2023-08-15T00:14:52.000+00:00,2023-08-16T00:15:27.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls49YM2P,6ad0fc9d6c3a20f4c6ac051bc92da54ee1817551,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls49YM2P,6ad0fc9d6c3a20f4c6ac051bc92da54ee1817551,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-16T00:15:04.000+00:00,,2023-08-16T00:15:04.000+00:00,2023-08-17T00:15:26.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls49e_9i,14cb7d352b0051ad0e9e6cf17b82ca7bb3ecd890,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls49e_9i,14cb7d352b0051ad0e9e6cf17b82ca7bb3ecd890,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-17T00:15:04.000+00:00,,2023-08-17T00:15:04.000+00:00,2023-08-18T00:15:30.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls49lrmt,4659b22e19a134ceccd156eaa9ae2c22f55f815e,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls49lrmt,4659b22e19a134ceccd156eaa9ae2c22f55f815e,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-08-18T00:15:06.000+00:00,,2023-08-18T00:15:06.000+00:00,2023-08-22T00:15:34.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4_1dnL,fb1589c3956013e97727f92bbc0e71ce7ee56aed,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4_1dnL,fb1589c3956013e97727f92bbc0e71ce7ee56aed,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-13T00:15:51.000+00:00,,2023-09-13T00:15:51.000+00:00,2023-09-16T00:15:18.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4_MqN_,7fa8413a2027d615e44af53d087ee9472d06d1cb,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4_MqN_,7fa8413a2027d615e44af53d087ee9472d06d1cb,FAILURE,DONE,FAILURE,github-pages,github-pages,2023-09-06T00:15:52.000+00:00,,2023-09-06T00:15:52.000+00:00,2023-09-06T00:26:10.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connect [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4_T1aO,99e2ddcb6b13ff0805e2e381a48d82815a269be4,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4_T1aO,99e2ddcb6b13ff0805e2e381a48d82815a269be4,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-07T00:15:15.000+00:00,,2023-09-07T00:15:15.000+00:00,2023-09-09T00:15:31.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4_hJ7a,dcb84a573c7fe5a3b90517288bcb52f4f1661eba,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4_hJ7a,dcb84a573c7fe5a3b90517288bcb52f4f1661eba,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-09T00:15:12.000+00:00,,2023-09-09T00:15:12.000+00:00,2023-09-10T00:16:45.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4_kApz,3f344adb62f3c8687349e87ad7f9af6f8eac1e6b,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4_kApz,3f344adb62f3c8687349e87ad7f9af6f8eac1e6b,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-10T00:16:21.000+00:00,,2023-09-10T00:16:21.000+00:00,2023-09-12T00:16:00.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls4_uDbG,930acbf0620d4eea14efd137628d2639c4def3c1,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls4_uDbG,930acbf0620d4eea14efd137628d2639c4def3c1,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-12T00:15:39.000+00:00,,2023-09-12T00:15:39.000+00:00,2023-09-13T00:16:12.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5AEMh6,188ba3cb41942737f8f089cccd8954c1a7b5cad6,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5AEMh6,188ba3cb41942737f8f089cccd8954c1a7b5cad6,FAILURE,DONE,FAILURE,github-pages,github-pages,2023-09-15T00:15:45.000+00:00,,2023-09-15T00:15:45.000+00:00,2023-09-15T00:26:02.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connect [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5AKzQf,855bf2e050071508f06bc58045579b9f08b47342,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5AKzQf,855bf2e050071508f06bc58045579b9f08b47342,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-16T00:14:57.000+00:00,,2023-09-16T00:14:57.000+00:00,2023-09-21T00:16:08.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Amtwp,f0c1e5adc1d83b6432cc35c653f26c5f1496a9d4,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Amtwp,f0c1e5adc1d83b6432cc35c653f26c5f1496a9d4,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-21T00:15:44.000+00:00,,2023-09-21T00:15:44.000+00:00,2023-09-22T00:16:32.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5AuRmx,7fe5eadf7632567050de048529a00e258e4b4cdc,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5AuRmx,7fe5eadf7632567050de048529a00e258e4b4cdc,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-22T00:16:06.000+00:00,,2023-09-22T00:16:06.000+00:00,2023-09-26T00:17:09.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5BCk6A,b6fb30a39744abf06860d3ad4702fe8284cf55e6,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5BCk6A,b6fb30a39744abf06860d3ad4702fe8284cf55e6,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-26T00:16:43.000+00:00,,2023-09-26T00:16:43.000+00:00,2023-09-28T00:16:11.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5BR0LM,17bdf85c5086148ce5350d7e4bb79c013e16fcec,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5BR0LM,17bdf85c5086148ce5350d7e4bb79c013e16fcec,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-09-28T00:15:50.000+00:00,,2023-09-28T00:15:50.000+00:00,2023-10-07T00:16:18.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5CJjV3,fd236c165277e019b05d51f2e03f75d6f2cc7928,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5CJjV3,fd236c165277e019b05d51f2e03f75d6f2cc7928,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-10-07T00:15:54.000+00:00,,2023-10-07T00:15:54.000+00:00,2023-10-19T00:16:29.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5D9bP0,694a45a1f412b2e55572952daef88927a518b89b,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5D9bP0,694a45a1f412b2e55572952daef88927a518b89b,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-10-26T00:15:52.000+00:00,,2023-10-26T00:15:52.000+00:00,2023-10-31T00:16:37.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5DRTm2,8affed656f7d0830a371d9b59936b65627ead55a,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5DRTm2,8affed656f7d0830a371d9b59936b65627ead55a,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-10-19T00:16:01.000+00:00,,2023-10-19T00:16:01.000+00:00,2023-10-20T00:16:39.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5DZKEl,7be3beb668c5d8850288b75e8342e42aad557f98,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5DZKEl,7be3beb668c5d8850288b75e8342e42aad557f98,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-10-20T00:16:10.000+00:00,,2023-10-20T00:16:10.000+00:00,2023-10-26T00:16:23.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5E3lGD,6159fc23a9b96d5846d742cd813a08dd2924d6db,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5E3lGD,6159fc23a9b96d5846d742cd813a08dd2924d6db,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-04T00:15:44.000+00:00,,2023-11-04T00:15:44.000+00:00,2023-11-08T00:16:49.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5EaF4g,8d37260db0a017f1a2a625592d6d73b54ed94a6c,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5EaF4g,8d37260db0a017f1a2a625592d6d73b54ed94a6c,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-10-31T00:16:11.000+00:00,,2023-10-31T00:16:11.000+00:00,2023-11-01T00:17:56.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Eh_vv,28c780b1f67f5d4023c9146e9fab414a8ce63450,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Eh_vv,28c780b1f67f5d4023c9146e9fab414a8ce63450,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-01T00:17:34.000+00:00,,2023-11-01T00:17:34.000+00:00,2023-11-02T00:16:33.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5EpQ6Y,7cb4a7583ae2a34f5b8e1eb7b2f621d8c7ebe394,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5EpQ6Y,7cb4a7583ae2a34f5b8e1eb7b2f621d8c7ebe394,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-02T00:16:09.000+00:00,,2023-11-02T00:16:09.000+00:00,2023-11-04T00:16:11.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5F7GQf,18271d01efbf56dbce94234ab1459921ec5605ed,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5F7GQf,18271d01efbf56dbce94234ab1459921ec5605ed,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-15T00:16:07.000+00:00,,2023-11-15T00:16:07.000+00:00,2023-11-16T00:16:26.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5FNxqw,46dde185a47185be665af62c98d9cf2f310fb969,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5FNxqw,46dde185a47185be665af62c98d9cf2f310fb969,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-08T00:16:23.000+00:00,,2023-11-08T00:16:23.000+00:00,2023-11-09T00:16:14.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5FV6tO,cbe3177a5f79d7114eb05a68e91876e5a8d31430,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5FV6tO,cbe3177a5f79d7114eb05a68e91876e5a8d31430,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-09T00:15:47.000+00:00,,2023-11-09T00:15:47.000+00:00,2023-11-10T00:16:30.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Fd5Ef,04aa310661cb65d09dce6ae76f6775b572ea3072,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Fd5Ef,04aa310661cb65d09dce6ae76f6775b572ea3072,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-10T00:16:03.000+00:00,,2023-11-10T00:16:03.000+00:00,2023-11-11T00:16:43.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5FlAFD,0c1b78866580298d0f968303f2f66e8d609696aa,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5FlAFD,0c1b78866580298d0f968303f2f66e8d609696aa,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-11T00:16:18.000+00:00,,2023-11-11T00:16:18.000+00:00,2023-11-14T00:16:29.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Fy_rA,147ef553a4267900a477b084c52d12d085f23c65,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Fy_rA,147ef553a4267900a477b084c52d12d085f23c65,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-14T00:16:03.000+00:00,,2023-11-14T00:16:03.000+00:00,2023-11-15T00:16:30.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5GC6zl,dbcfa5b011c1db46c7e83a0024fcc74ca900cb0a,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5GC6zl,dbcfa5b011c1db46c7e83a0024fcc74ca900cb0a,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-16T00:16:01.000+00:00,,2023-11-16T00:16:01.000+00:00,2023-11-17T00:16:43.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5GLBzz,d84ea7445a739b88821052b7ebf813d0d75368fc,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5GLBzz,d84ea7445a739b88821052b7ebf813d0d75368fc,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-17T00:16:17.000+00:00,,2023-11-17T00:16:17.000+00:00,2023-11-18T00:16:26.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5GSXgv,4e19b35eebebdd7f4cf3d95af2a9c3b88816a7a7,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5GSXgv,4e19b35eebebdd7f4cf3d95af2a9c3b88816a7a7,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-18T00:16:02.000+00:00,,2023-11-18T00:16:02.000+00:00,2023-11-19T00:17:49.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5GVnAC,c1ad6789f840e0d5619e1e9fd48315c090d9461d,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5GVnAC,c1ad6789f840e0d5619e1e9fd48315c090d9461d,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-19T00:17:27.000+00:00,,2023-11-19T00:17:27.000+00:00,2023-11-20T00:16:43.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5GYzON,0399078818676e5e3e4b1ca82b18a7dd3ab38255,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5GYzON,0399078818676e5e3e4b1ca82b18a7dd3ab38255,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-20T00:16:25.000+00:00,,2023-11-20T00:16:25.000+00:00,2023-11-21T00:16:57.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5GgdAH,e653abc4555da073f82e4648d3c7db7c4c3a5e1f,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5GgdAH,e653abc4555da073f82e4648d3c7db7c4c3a5e1f,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-21T00:16:29.000+00:00,,2023-11-21T00:16:29.000+00:00,2023-11-22T00:17:11.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5GoqPS,0a2f55bd7e63191842697959addef0b22ab37765,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5GoqPS,0a2f55bd7e63191842697959addef0b22ab37765,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-22T00:16:46.000+00:00,,2023-11-22T00:16:46.000+00:00,2023-11-30T00:16:59.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5HcS7M,66f73c01bdf9ffb7a97041dadae0eb3f6ddcaa58,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5HcS7M,66f73c01bdf9ffb7a97041dadae0eb3f6ddcaa58,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-11-30T00:16:31.000+00:00,,2023-11-30T00:16:31.000+00:00,2023-12-01T00:18:33.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5HkuAR,c546473f98edae970398c161073c7e404e48b6e2,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5HkuAR,c546473f98edae970398c161073c7e404e48b6e2,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-01T00:18:09.000+00:00,,2023-12-01T00:18:09.000+00:00,2023-12-02T00:16:12.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5HsH2B,cff50c5fcda1d6acfe8982cfb3fb060f11205e75,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5HsH2B,cff50c5fcda1d6acfe8982cfb3fb060f11205e75,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-02T00:15:48.000+00:00,,2023-12-02T00:15:48.000+00:00,2023-12-07T00:16:38.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5I7br6,b5c90119fe5a2234338835d2a9b02a3908b21b4f,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5I7br6,b5c90119fe5a2234338835d2a9b02a3908b21b4f,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-14T00:16:09.000+00:00,,2023-12-14T00:16:09.000+00:00,2023-12-15T00:17:01.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5IMHvT,fed41ba3596915f8c7ee8cd2d38d591d081ce755,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5IMHvT,fed41ba3596915f8c7ee8cd2d38d591d081ce755,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-07T00:16:14.000+00:00,,2023-12-07T00:16:14.000+00:00,2023-12-08T00:17:07.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5IUaRW,71b3ba5daeabb25cd50ef558ed28747f848c4374,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5IUaRW,71b3ba5daeabb25cd50ef558ed28747f848c4374,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-08T00:16:43.000+00:00,,2023-12-08T00:16:43.000+00:00,2023-12-09T00:16:51.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Ibkgx,18de552c72f9c14b783c8ee668287268a382e620,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Ibkgx,18de552c72f9c14b783c8ee668287268a382e620,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-09T00:16:23.000+00:00,,2023-12-09T00:16:23.000+00:00,2023-12-13T00:16:41.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Iy6gc,313ae8236674dcfae44528b14debf7e6f15eda47,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Iy6gc,313ae8236674dcfae44528b14debf7e6f15eda47,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-13T00:16:13.000+00:00,,2023-12-13T00:16:13.000+00:00,2023-12-14T00:16:37.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5JDoD7,52f5f97498e114074fb6c1dfaf2b9b875cfe9b25,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5JDoD7,52f5f97498e114074fb6c1dfaf2b9b875cfe9b25,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-15T00:16:37.000+00:00,,2023-12-15T00:16:37.000+00:00,2023-12-20T00:14:56.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5JhXYj,62040941b61b474153b0246b77beaf592c97d4a2,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5JhXYj,62040941b61b474153b0246b77beaf592c97d4a2,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-20T00:14:29.000+00:00,,2023-12-20T00:14:29.000+00:00,2023-12-22T00:17:00.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5JwkH4,14c3d04ce9c7ffdc0f6529fd083796965a2d9478,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5JwkH4,14c3d04ce9c7ffdc0f6529fd083796965a2d9478,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2023-12-22T00:16:33.000+00:00,,2023-12-22T00:16:33.000+00:00,2024-01-03T00:16:39.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5K4NUr,62a381a9a7a741fcaf7187443d0e4e80a73d0c90,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5K4NUr,62a381a9a7a741fcaf7187443d0e4e80a73d0c90,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-01-06T00:16:21.000+00:00,,2024-01-06T00:16:21.000+00:00,2024-01-09T00:17:39.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Kivd3,41447587a0fb2263efa3a1361c3bbfff99b382d8,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Kivd3,41447587a0fb2263efa3a1361c3bbfff99b382d8,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-01-03T00:16:14.000+00:00,,2024-01-03T00:16:14.000+00:00,2024-01-04T00:17:27.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Kpzh2,049c311a03dc1734f94bb2476348e864d24f877d,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Kpzh2,049c311a03dc1734f94bb2476348e864d24f877d,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-01-04T00:16:28.000+00:00,,2024-01-04T00:16:28.000+00:00,2024-01-05T00:16:43.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5KxQbd,0fe4aa9a860be1b7336509450d42c0ea7416bbd4,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5KxQbd,0fe4aa9a860be1b7336509450d42c0ea7416bbd4,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-01-05T00:16:19.000+00:00,,2024-01-05T00:16:19.000+00:00,2024-01-06T00:16:46.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5LG0Pt,51843a7a3167ee62667f5a9796d949b6ee5ea8ae,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5LG0Pt,51843a7a3167ee62667f5a9796d949b6ee5ea8ae,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-01-09T00:17:11.000+00:00,,2024-01-09T00:17:11.000+00:00,2024-01-10T00:17:08.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5LPB2X,7a88a499f7efccb1ac867767e8527e148319a374,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5LPB2X,7a88a499f7efccb1ac867767e8527e148319a374,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-01-10T00:16:38.000+00:00,,2024-01-10T00:16:38.000+00:00,2024-01-11T00:17:28.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5LXfIM,d47b0584c244b7e03b23007a7e0b4007cfa35e50,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5LXfIM,d47b0584c244b7e03b23007a7e0b4007cfa35e50,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-01-11T00:17:04.000+00:00,,2024-01-11T00:17:04.000+00:00,2024-01-12T00:16:44.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connec [...]
-github:GithubDeployment:1:DE_kwDOFAKDls5Lf8re,1ed90f394afc0965a0fc9672ee92ba107e40eeaa,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5Lf8re,1ed90f394afc0965a0fc9672ee92ba107e40eeaa,SUCCESS,DONE,ACTIVE,github-pages,github-pages,2024-01-12T00:16:27.000+00:00,,2024-01-12T00:16:27.000+00:00,2024-01-12T00:16:44.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""Connecti [...]
+github:GithubDeployment:1:DE_kwDOFAKDls5jmQjJ,5f64bfed25d7ab4ae0840357ec56890f4da27def,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5jmQjJ,5f64bfed25d7ab4ae0840357ec56890f4da27def,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-07-24T00:18:51.000+00:00,,2024-07-24T00:18:51.000+00:00,2024-08-02T00:18:13.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,Deploying to gh-pages from @ facebook/OpenBIC@cc00015240209658cadae37a4c [...]
+github:GithubDeployment:1:DE_kwDOFAKDls5k72wd,c510f30dba35481866f55dc6f4ea94bb3ff5a7ae,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5k72wd,c510f30dba35481866f55dc6f4ea94bb3ff5a7ae,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-08-02T00:17:55.000+00:00,,2024-08-02T00:17:55.000+00:00,2024-08-03T00:17:54.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,Deploying to gh-pages from @ facebook/OpenBIC@efd9dd4dbee783343b0fe32b20 [...]
+github:GithubDeployment:1:DE_kwDOFAKDls5lF2XZ,3f8aa35aa5d792e9890c804ba629c065f8609c7a,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5lF2XZ,3f8aa35aa5d792e9890c804ba629c065f8609c7a,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-08-03T00:17:32.000+00:00,,2024-08-03T00:17:32.000+00:00,2024-08-06T00:18:22.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,Deploying to gh-pages from @ facebook/OpenBIC@2c1c4c6f660961692a9736d030 [...]
+github:GithubDeployment:1:DE_kwDOFAKDls5lZH1E,7a4d4b248e85a148f0bec8bc7fd480ed3c396b35,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5lZH1E,7a4d4b248e85a148f0bec8bc7fd480ed3c396b35,SUCCESS,DONE,INACTIVE,github-pages,github-pages,2024-08-06T00:18:05.000+00:00,,2024-08-06T00:18:05.000+00:00,2024-08-08T00:18:13.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,Deploying to gh-pages from @ facebook/OpenBIC@fa848dcf1e18b9e6caea562cce [...]
+github:GithubDeployment:1:DE_kwDOFAKDls5lv0SB,c0cfe86acc9ee2c2d0e64a5f1276e1ac3cf1f5c6,github:GithubRepo:1:335709078,github:GithubDeployment:1:DE_kwDOFAKDls5lv0SB,c0cfe86acc9ee2c2d0e64a5f1276e1ac3cf1f5c6,SUCCESS,DONE,ACTIVE,github-pages,github-pages,2024-08-08T00:17:56.000+00:00,,2024-08-08T00:17:56.000+00:00,2024-08-08T00:18:13.000+00:00,,gh-pages,github:GithubRepo:1:335709078,https://github.com/facebook/OpenBIC,,Deploying to gh-pages from @ facebook/OpenBIC@b25ee19a81f110e744af6fb62870 [...]
diff --git a/backend/plugins/github_graphql/e2e/snapshot_tables/cicd_deployments.csv b/backend/plugins/github_graphql/e2e/snapshot_tables/cicd_deployments.csv
index b0e5d69f4..7dc00e01e 100644
--- a/backend/plugins/github_graphql/e2e/snapshot_tables/cicd_deployments.csv
+++ b/backend/plugins/github_graphql/e2e/snapshot_tables/cicd_deployments.csv
@@ -1,101 +1,6 @@
 id,cicd_scope_id,name,result,status,original_status,environment,created_date,queued_date,started_date,finished_date,display_title,url,_raw_data_params,_raw_data_table,_raw_data_id,_raw_data_remark
-github:GithubDeployment:1:DE_kwDOFAKDls4-0X1l,github:GithubRepo:1:335709078,942b8db519348dbfbaecb20f50e0fbc6b68ed0c9,SUCCESS,DONE,INACTIVE,github-pages,2023-09-01T00:16:30.000+00:00,,2023-09-01T00:16:30.000+00:00,2023-09-07T00:15:41.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4-6eZm,github:GithubRepo:1:335709078,8520b88b703d54813466496f7fd92f0a7d3969af,FAILURE,DONE,FAILURE,github-pages,2023-09-02T00:18:09.000+00:00,,2023-09-02T00:18:09.000+00:00,2023-09-02T00:28:21.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4-F5fW,github:GithubRepo:1:335709078,34437945a29efbd0be8421481b9e04fe831ad19e,SUCCESS,DONE,INACTIVE,github-pages,2023-08-24T00:15:06.000+00:00,,2023-08-24T00:15:06.000+00:00,2023-08-25T00:15:23.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4-M3Q2,github:GithubRepo:1:335709078,8e11f14ee7b7b40bfcd597f331491220b26045d4,SUCCESS,DONE,INACTIVE,github-pages,2023-08-25T00:15:03.000+00:00,,2023-08-25T00:15:03.000+00:00,2023-08-29T00:15:35.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4-fUUV,github:GithubRepo:1:335709078,8c57a0107b4e9d499098d59f0305a8a328c174b2,SUCCESS,DONE,INACTIVE,github-pages,2023-08-29T00:15:14.000+00:00,,2023-08-29T00:15:14.000+00:00,2023-08-30T00:16:04.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4-maPb,github:GithubRepo:1:335709078,abcc5e363aebebd9e8a7d9f2f36ea4372e8a8931,SUCCESS,DONE,INACTIVE,github-pages,2023-08-30T00:15:45.000+00:00,,2023-08-30T00:15:45.000+00:00,2023-09-01T00:16:49.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls428BxU,github:GithubRepo:1:335709078,b2d54aa49e68f052eeba67f49281b7956717b417,SUCCESS,DONE,INACTIVE,github-pages,2023-05-27T00:16:24.000+00:00,,2023-05-27T00:16:24.000+00:00,2023-06-01T00:22:26.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls431F9F,github:GithubRepo:1:335709078,c5bf0eef7d588943572039df0b3b8b16e359e578,SUCCESS,DONE,INACTIVE,github-pages,2023-06-08T00:17:20.000+00:00,,2023-06-08T00:17:20.000+00:00,2023-06-09T00:20:50.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4369k5,github:GithubRepo:1:335709078,48907628796ce6b11dc32b23cbd2d8c376e92f5e,SUCCESS,DONE,INACTIVE,github-pages,2023-06-09T00:20:28.000+00:00,,2023-06-09T00:20:28.000+00:00,2023-06-13T00:17:51.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls43R2Fh,github:GithubRepo:1:335709078,f64fa44982bef77be35c164c23c2fa52169aa08f,SUCCESS,DONE,INACTIVE,github-pages,2023-06-01T00:22:06.000+00:00,,2023-06-01T00:22:06.000+00:00,2023-06-02T00:18:20.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls43YB2g,github:GithubRepo:1:335709078,4f8c8bb26762b490e05f6d1db9170f406c508ee1,SUCCESS,DONE,INACTIVE,github-pages,2023-06-02T00:18:02.000+00:00,,2023-06-02T00:18:02.000+00:00,2023-06-03T00:17:24.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls43dgxv,github:GithubRepo:1:335709078,769fe5204026013264b967d001ea2b374eb98479,SUCCESS,DONE,INACTIVE,github-pages,2023-06-03T00:17:04.000+00:00,,2023-06-03T00:17:04.000+00:00,2023-06-07T00:17:41.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls43uzci,github:GithubRepo:1:335709078,7f691d305a3e060b4674df55348b614e943de6dc,SUCCESS,DONE,INACTIVE,github-pages,2023-06-07T00:17:20.000+00:00,,2023-06-07T00:17:20.000+00:00,2023-06-08T00:17:44.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls447-8H,github:GithubRepo:1:335709078,be935f4d3990fa3250b9686c6b3e772c1b6c9867,SUCCESS,DONE,INACTIVE,github-pages,2023-06-22T00:17:39.000+00:00,,2023-06-22T00:17:39.000+00:00,2023-06-23T00:20:41.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls44Loog,github:GithubRepo:1:335709078,2fc56741255f1660eb58fa342c728c6098ce78a2,SUCCESS,DONE,INACTIVE,github-pages,2023-06-13T00:17:31.000+00:00,,2023-06-13T00:17:31.000+00:00,2023-06-14T00:16:45.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls44SDKD,github:GithubRepo:1:335709078,5ba4435c75a95c93440b7d70c0134003a3a4935d,SUCCESS,DONE,INACTIVE,github-pages,2023-06-14T00:16:26.000+00:00,,2023-06-14T00:16:26.000+00:00,2023-06-15T00:17:17.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls44YePw,github:GithubRepo:1:335709078,c0aeae75ea40855e6f4e81cd1b7739488bb128d8,SUCCESS,DONE,INACTIVE,github-pages,2023-06-15T00:16:56.000+00:00,,2023-06-15T00:16:56.000+00:00,2023-06-16T00:17:29.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls44ey8W,github:GithubRepo:1:335709078,2a1235a5b7f37c87a9acdbe3f2016147738155b3,SUCCESS,DONE,INACTIVE,github-pages,2023-06-16T00:17:09.000+00:00,,2023-06-16T00:17:09.000+00:00,2023-06-17T00:17:13.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls44kcjz,github:GithubRepo:1:335709078,a01ed5cd5c8ef8973cfb16ba8de371cc816f4ee8,SUCCESS,DONE,INACTIVE,github-pages,2023-06-17T00:16:52.000+00:00,,2023-06-17T00:16:52.000+00:00,2023-06-22T00:17:58.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls451yOJ,github:GithubRepo:1:335709078,58bb9fb72acc02250dc040fa0d7afdd2dab6a671,SUCCESS,DONE,INACTIVE,github-pages,2023-07-04T00:19:01.000+00:00,,2023-07-04T00:19:01.000+00:00,2023-07-06T00:20:04.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls45CRKd,github:GithubRepo:1:335709078,a45d8dc853b36e781a7ad3b0f0c6229db9aa0fa2,SUCCESS,DONE,INACTIVE,github-pages,2023-06-23T00:20:21.000+00:00,,2023-06-23T00:20:21.000+00:00,2023-06-27T00:20:33.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls45S-1d,github:GithubRepo:1:335709078,026603017e6a073a36084b572433a6eb3761db21,SUCCESS,DONE,INACTIVE,github-pages,2023-06-27T00:19:09.000+00:00,,2023-06-27T00:19:09.000+00:00,2023-06-30T00:17:53.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls45fwrq,github:GithubRepo:1:335709078,8a912915b9d138a3c972bd5901f6186472d8b548,SUCCESS,DONE,ACTIVE,github-pages,2023-06-29T00:18:47.000+00:00,,2023-06-29T00:18:47.000+00:00,2023-06-29T00:18:47.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls45lxAT,github:GithubRepo:1:335709078,ab955349c9dc5da065fe9e1912cf39981eda4c6c,SUCCESS,DONE,INACTIVE,github-pages,2023-06-30T00:17:34.000+00:00,,2023-06-30T00:17:34.000+00:00,2023-07-01T00:21:13.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls45rSde,github:GithubRepo:1:335709078,5a9e02f82c9b22bf11075d1d2437b12ad5e55f82,SUCCESS,DONE,INACTIVE,github-pages,2023-07-01T00:20:51.000+00:00,,2023-07-01T00:20:51.000+00:00,2023-07-04T00:19:21.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls460IDS,github:GithubRepo:1:335709078,96e88d5f8d89a3208869ff1011e6711adcb05d4f,SUCCESS,DONE,INACTIVE,github-pages,2023-07-16T00:21:07.000+00:00,,2023-07-16T00:21:07.000+00:00,2023-07-19T00:24:15.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls46BQnu,github:GithubRepo:1:335709078,3204aed3e772d69c4edefc319596e9efa2a43629,SUCCESS,DONE,INACTIVE,github-pages,2023-07-06T00:19:44.000+00:00,,2023-07-06T00:19:44.000+00:00,2023-07-08T00:19:27.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls46NDBy,github:GithubRepo:1:335709078,aad308176b00ab742a23bba581c2e6cb276fc450,SUCCESS,DONE,INACTIVE,github-pages,2023-07-08T00:19:07.000+00:00,,2023-07-08T00:19:07.000+00:00,2023-07-11T00:19:32.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls46YeJ3,github:GithubRepo:1:335709078,e29c7899f4095b901c22f0b80ba8d1d9ea5b581d,SUCCESS,DONE,INACTIVE,github-pages,2023-07-11T00:19:11.000+00:00,,2023-07-11T00:19:11.000+00:00,2023-07-12T00:21:17.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls46fDDn,github:GithubRepo:1:335709078,cc65c6735ff75f35a9efeddbe4ee141e9dca732d,SUCCESS,DONE,INACTIVE,github-pages,2023-07-12T00:20:55.000+00:00,,2023-07-12T00:20:55.000+00:00,2023-07-13T00:19:21.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls46le2q,github:GithubRepo:1:335709078,8edfd0bf552ad15eaab5304fe4587404d03037cb,SUCCESS,DONE,INACTIVE,github-pages,2023-07-13T00:19:02.000+00:00,,2023-07-13T00:19:02.000+00:00,2023-07-14T00:20:00.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls46r7bJ,github:GithubRepo:1:335709078,eb4b26541637b70a83f5702061b5d7190d11f8e7,SUCCESS,DONE,INACTIVE,github-pages,2023-07-14T00:19:40.000+00:00,,2023-07-14T00:19:40.000+00:00,2023-07-15T00:19:07.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls46xjZH,github:GithubRepo:1:335709078,496fac5d87d0775f87662dcce2c1db9dcbd6b2e4,SUCCESS,DONE,INACTIVE,github-pages,2023-07-15T00:18:46.000+00:00,,2023-07-15T00:18:46.000+00:00,2023-07-16T00:21:28.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls47DkeG,github:GithubRepo:1:335709078,0c115c5da24b37d50ebef0f33eff0dc583ee3e5d,SUCCESS,DONE,INACTIVE,github-pages,2023-07-19T00:23:52.000+00:00,,2023-07-19T00:23:52.000+00:00,2023-07-20T00:18:20.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls47KH83,github:GithubRepo:1:335709078,ae128b0218706368b62e46b9a667722c24380988,SUCCESS,DONE,INACTIVE,github-pages,2023-07-20T00:17:54.000+00:00,,2023-07-20T00:17:54.000+00:00,2023-07-21T00:17:36.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls47QpmU,github:GithubRepo:1:335709078,a3537c57b409351dc805b35de01bde86f8146553,SUCCESS,DONE,INACTIVE,github-pages,2023-07-21T00:17:14.000+00:00,,2023-07-21T00:17:14.000+00:00,2023-07-22T00:18:09.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls47WW7g,github:GithubRepo:1:335709078,45254000796a1fcdca453cfb1301eddb16eada60,SUCCESS,DONE,INACTIVE,github-pages,2023-07-22T00:17:47.000+00:00,,2023-07-22T00:17:47.000+00:00,2023-07-26T00:17:57.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls47omvS,github:GithubRepo:1:335709078,d370ca5ad7a33c312cf5a0461523c517c58e8d91,SUCCESS,DONE,INACTIVE,github-pages,2023-07-26T00:17:35.000+00:00,,2023-07-26T00:17:35.000+00:00,2023-08-01T00:20:12.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls48HRNq,github:GithubRepo:1:335709078,14cbe38bb0695bef1adf37cc4a964316c4dbd158,SUCCESS,DONE,INACTIVE,github-pages,2023-08-01T00:19:37.000+00:00,,2023-08-01T00:19:37.000+00:00,2023-08-03T00:17:06.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls48UdaU,github:GithubRepo:1:335709078,08405a6e4a1def2ec7e1a233ab287e644fdf8332,SUCCESS,DONE,INACTIVE,github-pages,2023-08-03T00:16:43.000+00:00,,2023-08-03T00:16:43.000+00:00,2023-08-05T00:17:22.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls48g4WQ,github:GithubRepo:1:335709078,0e3b13ce6257068d02d093a5ecf9872a03371fec,SUCCESS,DONE,INACTIVE,github-pages,2023-08-05T00:16:57.000+00:00,,2023-08-05T00:16:57.000+00:00,2023-08-06T00:16:49.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls48jhS-,github:GithubRepo:1:335709078,40180543c4dfbd456432080b060a0883951c6e61,SUCCESS,DONE,INACTIVE,github-pages,2023-08-06T00:16:29.000+00:00,,2023-08-06T00:16:29.000+00:00,2023-08-15T00:15:11.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls49-3vy,github:GithubRepo:1:335709078,e86eaa63b43fbadf4e6baca2085ded2b41b8427a,SUCCESS,DONE,INACTIVE,github-pages,2023-08-23T00:14:50.000+00:00,,2023-08-23T00:14:50.000+00:00,2023-08-24T00:15:25.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4932lH,github:GithubRepo:1:335709078,42cdf09c0b520066603ad2fbe2e3a35df8646390,SUCCESS,DONE,INACTIVE,github-pages,2023-08-22T00:15:14.000+00:00,,2023-08-22T00:15:14.000+00:00,2023-08-23T00:15:12.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls49SDiH,github:GithubRepo:1:335709078,7c9369308e9252fa8bed5705bbf7a581eb6b84d0,SUCCESS,DONE,INACTIVE,github-pages,2023-08-15T00:14:52.000+00:00,,2023-08-15T00:14:52.000+00:00,2023-08-16T00:15:27.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls49YM2P,github:GithubRepo:1:335709078,6ad0fc9d6c3a20f4c6ac051bc92da54ee1817551,SUCCESS,DONE,INACTIVE,github-pages,2023-08-16T00:15:04.000+00:00,,2023-08-16T00:15:04.000+00:00,2023-08-17T00:15:26.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls49e_9i,github:GithubRepo:1:335709078,14cb7d352b0051ad0e9e6cf17b82ca7bb3ecd890,SUCCESS,DONE,INACTIVE,github-pages,2023-08-17T00:15:04.000+00:00,,2023-08-17T00:15:04.000+00:00,2023-08-18T00:15:30.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls49lrmt,github:GithubRepo:1:335709078,4659b22e19a134ceccd156eaa9ae2c22f55f815e,SUCCESS,DONE,INACTIVE,github-pages,2023-08-18T00:15:06.000+00:00,,2023-08-18T00:15:06.000+00:00,2023-08-22T00:15:34.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4_1dnL,github:GithubRepo:1:335709078,fb1589c3956013e97727f92bbc0e71ce7ee56aed,SUCCESS,DONE,INACTIVE,github-pages,2023-09-13T00:15:51.000+00:00,,2023-09-13T00:15:51.000+00:00,2023-09-16T00:15:18.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4_MqN_,github:GithubRepo:1:335709078,7fa8413a2027d615e44af53d087ee9472d06d1cb,FAILURE,DONE,FAILURE,github-pages,2023-09-06T00:15:52.000+00:00,,2023-09-06T00:15:52.000+00:00,2023-09-06T00:26:10.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4_T1aO,github:GithubRepo:1:335709078,99e2ddcb6b13ff0805e2e381a48d82815a269be4,SUCCESS,DONE,INACTIVE,github-pages,2023-09-07T00:15:15.000+00:00,,2023-09-07T00:15:15.000+00:00,2023-09-09T00:15:31.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4_hJ7a,github:GithubRepo:1:335709078,dcb84a573c7fe5a3b90517288bcb52f4f1661eba,SUCCESS,DONE,INACTIVE,github-pages,2023-09-09T00:15:12.000+00:00,,2023-09-09T00:15:12.000+00:00,2023-09-10T00:16:45.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4_kApz,github:GithubRepo:1:335709078,3f344adb62f3c8687349e87ad7f9af6f8eac1e6b,SUCCESS,DONE,INACTIVE,github-pages,2023-09-10T00:16:21.000+00:00,,2023-09-10T00:16:21.000+00:00,2023-09-12T00:16:00.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls4_uDbG,github:GithubRepo:1:335709078,930acbf0620d4eea14efd137628d2639c4def3c1,SUCCESS,DONE,INACTIVE,github-pages,2023-09-12T00:15:39.000+00:00,,2023-09-12T00:15:39.000+00:00,2023-09-13T00:16:12.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5AEMh6,github:GithubRepo:1:335709078,188ba3cb41942737f8f089cccd8954c1a7b5cad6,FAILURE,DONE,FAILURE,github-pages,2023-09-15T00:15:45.000+00:00,,2023-09-15T00:15:45.000+00:00,2023-09-15T00:26:02.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5AKzQf,github:GithubRepo:1:335709078,855bf2e050071508f06bc58045579b9f08b47342,SUCCESS,DONE,INACTIVE,github-pages,2023-09-16T00:14:57.000+00:00,,2023-09-16T00:14:57.000+00:00,2023-09-21T00:16:08.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Amtwp,github:GithubRepo:1:335709078,f0c1e5adc1d83b6432cc35c653f26c5f1496a9d4,SUCCESS,DONE,INACTIVE,github-pages,2023-09-21T00:15:44.000+00:00,,2023-09-21T00:15:44.000+00:00,2023-09-22T00:16:32.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5AuRmx,github:GithubRepo:1:335709078,7fe5eadf7632567050de048529a00e258e4b4cdc,SUCCESS,DONE,INACTIVE,github-pages,2023-09-22T00:16:06.000+00:00,,2023-09-22T00:16:06.000+00:00,2023-09-26T00:17:09.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5BCk6A,github:GithubRepo:1:335709078,b6fb30a39744abf06860d3ad4702fe8284cf55e6,SUCCESS,DONE,INACTIVE,github-pages,2023-09-26T00:16:43.000+00:00,,2023-09-26T00:16:43.000+00:00,2023-09-28T00:16:11.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5BR0LM,github:GithubRepo:1:335709078,17bdf85c5086148ce5350d7e4bb79c013e16fcec,SUCCESS,DONE,INACTIVE,github-pages,2023-09-28T00:15:50.000+00:00,,2023-09-28T00:15:50.000+00:00,2023-10-07T00:16:18.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5CJjV3,github:GithubRepo:1:335709078,fd236c165277e019b05d51f2e03f75d6f2cc7928,SUCCESS,DONE,INACTIVE,github-pages,2023-10-07T00:15:54.000+00:00,,2023-10-07T00:15:54.000+00:00,2023-10-19T00:16:29.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5D9bP0,github:GithubRepo:1:335709078,694a45a1f412b2e55572952daef88927a518b89b,SUCCESS,DONE,INACTIVE,github-pages,2023-10-26T00:15:52.000+00:00,,2023-10-26T00:15:52.000+00:00,2023-10-31T00:16:37.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5DRTm2,github:GithubRepo:1:335709078,8affed656f7d0830a371d9b59936b65627ead55a,SUCCESS,DONE,INACTIVE,github-pages,2023-10-19T00:16:01.000+00:00,,2023-10-19T00:16:01.000+00:00,2023-10-20T00:16:39.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5DZKEl,github:GithubRepo:1:335709078,7be3beb668c5d8850288b75e8342e42aad557f98,SUCCESS,DONE,INACTIVE,github-pages,2023-10-20T00:16:10.000+00:00,,2023-10-20T00:16:10.000+00:00,2023-10-26T00:16:23.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5E3lGD,github:GithubRepo:1:335709078,6159fc23a9b96d5846d742cd813a08dd2924d6db,SUCCESS,DONE,INACTIVE,github-pages,2023-11-04T00:15:44.000+00:00,,2023-11-04T00:15:44.000+00:00,2023-11-08T00:16:49.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5EaF4g,github:GithubRepo:1:335709078,8d37260db0a017f1a2a625592d6d73b54ed94a6c,SUCCESS,DONE,INACTIVE,github-pages,2023-10-31T00:16:11.000+00:00,,2023-10-31T00:16:11.000+00:00,2023-11-01T00:17:56.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Eh_vv,github:GithubRepo:1:335709078,28c780b1f67f5d4023c9146e9fab414a8ce63450,SUCCESS,DONE,INACTIVE,github-pages,2023-11-01T00:17:34.000+00:00,,2023-11-01T00:17:34.000+00:00,2023-11-02T00:16:33.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5EpQ6Y,github:GithubRepo:1:335709078,7cb4a7583ae2a34f5b8e1eb7b2f621d8c7ebe394,SUCCESS,DONE,INACTIVE,github-pages,2023-11-02T00:16:09.000+00:00,,2023-11-02T00:16:09.000+00:00,2023-11-04T00:16:11.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5F7GQf,github:GithubRepo:1:335709078,18271d01efbf56dbce94234ab1459921ec5605ed,SUCCESS,DONE,INACTIVE,github-pages,2023-11-15T00:16:07.000+00:00,,2023-11-15T00:16:07.000+00:00,2023-11-16T00:16:26.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5FNxqw,github:GithubRepo:1:335709078,46dde185a47185be665af62c98d9cf2f310fb969,SUCCESS,DONE,INACTIVE,github-pages,2023-11-08T00:16:23.000+00:00,,2023-11-08T00:16:23.000+00:00,2023-11-09T00:16:14.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5FV6tO,github:GithubRepo:1:335709078,cbe3177a5f79d7114eb05a68e91876e5a8d31430,SUCCESS,DONE,INACTIVE,github-pages,2023-11-09T00:15:47.000+00:00,,2023-11-09T00:15:47.000+00:00,2023-11-10T00:16:30.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Fd5Ef,github:GithubRepo:1:335709078,04aa310661cb65d09dce6ae76f6775b572ea3072,SUCCESS,DONE,INACTIVE,github-pages,2023-11-10T00:16:03.000+00:00,,2023-11-10T00:16:03.000+00:00,2023-11-11T00:16:43.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5FlAFD,github:GithubRepo:1:335709078,0c1b78866580298d0f968303f2f66e8d609696aa,SUCCESS,DONE,INACTIVE,github-pages,2023-11-11T00:16:18.000+00:00,,2023-11-11T00:16:18.000+00:00,2023-11-14T00:16:29.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Fy_rA,github:GithubRepo:1:335709078,147ef553a4267900a477b084c52d12d085f23c65,SUCCESS,DONE,INACTIVE,github-pages,2023-11-14T00:16:03.000+00:00,,2023-11-14T00:16:03.000+00:00,2023-11-15T00:16:30.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5GC6zl,github:GithubRepo:1:335709078,dbcfa5b011c1db46c7e83a0024fcc74ca900cb0a,SUCCESS,DONE,INACTIVE,github-pages,2023-11-16T00:16:01.000+00:00,,2023-11-16T00:16:01.000+00:00,2023-11-17T00:16:43.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5GLBzz,github:GithubRepo:1:335709078,d84ea7445a739b88821052b7ebf813d0d75368fc,SUCCESS,DONE,INACTIVE,github-pages,2023-11-17T00:16:17.000+00:00,,2023-11-17T00:16:17.000+00:00,2023-11-18T00:16:26.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5GSXgv,github:GithubRepo:1:335709078,4e19b35eebebdd7f4cf3d95af2a9c3b88816a7a7,SUCCESS,DONE,INACTIVE,github-pages,2023-11-18T00:16:02.000+00:00,,2023-11-18T00:16:02.000+00:00,2023-11-19T00:17:49.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5GVnAC,github:GithubRepo:1:335709078,c1ad6789f840e0d5619e1e9fd48315c090d9461d,SUCCESS,DONE,INACTIVE,github-pages,2023-11-19T00:17:27.000+00:00,,2023-11-19T00:17:27.000+00:00,2023-11-20T00:16:43.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5GYzON,github:GithubRepo:1:335709078,0399078818676e5e3e4b1ca82b18a7dd3ab38255,SUCCESS,DONE,INACTIVE,github-pages,2023-11-20T00:16:25.000+00:00,,2023-11-20T00:16:25.000+00:00,2023-11-21T00:16:57.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5GgdAH,github:GithubRepo:1:335709078,e653abc4555da073f82e4648d3c7db7c4c3a5e1f,SUCCESS,DONE,INACTIVE,github-pages,2023-11-21T00:16:29.000+00:00,,2023-11-21T00:16:29.000+00:00,2023-11-22T00:17:11.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5GoqPS,github:GithubRepo:1:335709078,0a2f55bd7e63191842697959addef0b22ab37765,SUCCESS,DONE,INACTIVE,github-pages,2023-11-22T00:16:46.000+00:00,,2023-11-22T00:16:46.000+00:00,2023-11-30T00:16:59.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5HcS7M,github:GithubRepo:1:335709078,66f73c01bdf9ffb7a97041dadae0eb3f6ddcaa58,SUCCESS,DONE,INACTIVE,github-pages,2023-11-30T00:16:31.000+00:00,,2023-11-30T00:16:31.000+00:00,2023-12-01T00:18:33.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5HkuAR,github:GithubRepo:1:335709078,c546473f98edae970398c161073c7e404e48b6e2,SUCCESS,DONE,INACTIVE,github-pages,2023-12-01T00:18:09.000+00:00,,2023-12-01T00:18:09.000+00:00,2023-12-02T00:16:12.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5HsH2B,github:GithubRepo:1:335709078,cff50c5fcda1d6acfe8982cfb3fb060f11205e75,SUCCESS,DONE,INACTIVE,github-pages,2023-12-02T00:15:48.000+00:00,,2023-12-02T00:15:48.000+00:00,2023-12-07T00:16:38.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5I7br6,github:GithubRepo:1:335709078,b5c90119fe5a2234338835d2a9b02a3908b21b4f,SUCCESS,DONE,INACTIVE,github-pages,2023-12-14T00:16:09.000+00:00,,2023-12-14T00:16:09.000+00:00,2023-12-15T00:17:01.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5IMHvT,github:GithubRepo:1:335709078,fed41ba3596915f8c7ee8cd2d38d591d081ce755,SUCCESS,DONE,INACTIVE,github-pages,2023-12-07T00:16:14.000+00:00,,2023-12-07T00:16:14.000+00:00,2023-12-08T00:17:07.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5IUaRW,github:GithubRepo:1:335709078,71b3ba5daeabb25cd50ef558ed28747f848c4374,SUCCESS,DONE,INACTIVE,github-pages,2023-12-08T00:16:43.000+00:00,,2023-12-08T00:16:43.000+00:00,2023-12-09T00:16:51.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Ibkgx,github:GithubRepo:1:335709078,18de552c72f9c14b783c8ee668287268a382e620,SUCCESS,DONE,INACTIVE,github-pages,2023-12-09T00:16:23.000+00:00,,2023-12-09T00:16:23.000+00:00,2023-12-13T00:16:41.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Iy6gc,github:GithubRepo:1:335709078,313ae8236674dcfae44528b14debf7e6f15eda47,SUCCESS,DONE,INACTIVE,github-pages,2023-12-13T00:16:13.000+00:00,,2023-12-13T00:16:13.000+00:00,2023-12-14T00:16:37.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5JDoD7,github:GithubRepo:1:335709078,52f5f97498e114074fb6c1dfaf2b9b875cfe9b25,SUCCESS,DONE,INACTIVE,github-pages,2023-12-15T00:16:37.000+00:00,,2023-12-15T00:16:37.000+00:00,2023-12-20T00:14:56.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5JhXYj,github:GithubRepo:1:335709078,62040941b61b474153b0246b77beaf592c97d4a2,SUCCESS,DONE,INACTIVE,github-pages,2023-12-20T00:14:29.000+00:00,,2023-12-20T00:14:29.000+00:00,2023-12-22T00:17:00.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5JwkH4,github:GithubRepo:1:335709078,14c3d04ce9c7ffdc0f6529fd083796965a2d9478,SUCCESS,DONE,INACTIVE,github-pages,2023-12-22T00:16:33.000+00:00,,2023-12-22T00:16:33.000+00:00,2024-01-03T00:16:39.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5K4NUr,github:GithubRepo:1:335709078,62a381a9a7a741fcaf7187443d0e4e80a73d0c90,SUCCESS,DONE,INACTIVE,github-pages,2024-01-06T00:16:21.000+00:00,,2024-01-06T00:16:21.000+00:00,2024-01-09T00:17:39.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Kivd3,github:GithubRepo:1:335709078,41447587a0fb2263efa3a1361c3bbfff99b382d8,SUCCESS,DONE,INACTIVE,github-pages,2024-01-03T00:16:14.000+00:00,,2024-01-03T00:16:14.000+00:00,2024-01-04T00:17:27.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Kpzh2,github:GithubRepo:1:335709078,049c311a03dc1734f94bb2476348e864d24f877d,SUCCESS,DONE,INACTIVE,github-pages,2024-01-04T00:16:28.000+00:00,,2024-01-04T00:16:28.000+00:00,2024-01-05T00:16:43.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5KxQbd,github:GithubRepo:1:335709078,0fe4aa9a860be1b7336509450d42c0ea7416bbd4,SUCCESS,DONE,INACTIVE,github-pages,2024-01-05T00:16:19.000+00:00,,2024-01-05T00:16:19.000+00:00,2024-01-06T00:16:46.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5LG0Pt,github:GithubRepo:1:335709078,51843a7a3167ee62667f5a9796d949b6ee5ea8ae,SUCCESS,DONE,INACTIVE,github-pages,2024-01-09T00:17:11.000+00:00,,2024-01-09T00:17:11.000+00:00,2024-01-10T00:17:08.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5LPB2X,github:GithubRepo:1:335709078,7a88a499f7efccb1ac867767e8527e148319a374,SUCCESS,DONE,INACTIVE,github-pages,2024-01-10T00:16:38.000+00:00,,2024-01-10T00:16:38.000+00:00,2024-01-11T00:17:28.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5LXfIM,github:GithubRepo:1:335709078,d47b0584c244b7e03b23007a7e0b4007cfa35e50,SUCCESS,DONE,INACTIVE,github-pages,2024-01-11T00:17:04.000+00:00,,2024-01-11T00:17:04.000+00:00,2024-01-12T00:16:44.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
-github:GithubDeployment:1:DE_kwDOFAKDls5Lf8re,github:GithubRepo:1:335709078,1ed90f394afc0965a0fc9672ee92ba107e40eeaa,SUCCESS,DONE,ACTIVE,github-pages,2024-01-12T00:16:27.000+00:00,,2024-01-12T00:16:27.000+00:00,2024-01-12T00:16:44.000+00:00,,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
+github:GithubDeployment:1:DE_kwDOFAKDls5jmQjJ,github:GithubRepo:1:335709078,5f64bfed25d7ab4ae0840357ec56890f4da27def,SUCCESS,DONE,INACTIVE,github-pages,2024-07-24T00:18:51.000+00:00,,2024-07-24T00:18:51.000+00:00,2024-08-02T00:18:13.000+00:00,Deploying to gh-pages from @ facebook/OpenBIC@cc00015240209658cadae37a4c46698ff02ad78e 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,5,
+github:GithubDeployment:1:DE_kwDOFAKDls5k72wd,github:GithubRepo:1:335709078,c510f30dba35481866f55dc6f4ea94bb3ff5a7ae,SUCCESS,DONE,INACTIVE,github-pages,2024-08-02T00:17:55.000+00:00,,2024-08-02T00:17:55.000+00:00,2024-08-03T00:17:54.000+00:00,Deploying to gh-pages from @ facebook/OpenBIC@efd9dd4dbee783343b0fe32b20d04d4ed68b1681 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,4,
+github:GithubDeployment:1:DE_kwDOFAKDls5lF2XZ,github:GithubRepo:1:335709078,3f8aa35aa5d792e9890c804ba629c065f8609c7a,SUCCESS,DONE,INACTIVE,github-pages,2024-08-03T00:17:32.000+00:00,,2024-08-03T00:17:32.000+00:00,2024-08-06T00:18:22.000+00:00,Deploying to gh-pages from @ facebook/OpenBIC@2c1c4c6f660961692a9736d0304f9fdb2db3a9e8 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,3,
+github:GithubDeployment:1:DE_kwDOFAKDls5lZH1E,github:GithubRepo:1:335709078,7a4d4b248e85a148f0bec8bc7fd480ed3c396b35,SUCCESS,DONE,INACTIVE,github-pages,2024-08-06T00:18:05.000+00:00,,2024-08-06T00:18:05.000+00:00,2024-08-08T00:18:13.000+00:00,Deploying to gh-pages from @ facebook/OpenBIC@fa848dcf1e18b9e6caea562ccecf282e0b52af39 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,2,
+github:GithubDeployment:1:DE_kwDOFAKDls5lv0SB,github:GithubRepo:1:335709078,c0cfe86acc9ee2c2d0e64a5f1276e1ac3cf1f5c6,SUCCESS,DONE,ACTIVE,github-pages,2024-08-08T00:17:56.000+00:00,,2024-08-08T00:17:56.000+00:00,2024-08-08T00:18:13.000+00:00,Deploying to gh-pages from @ facebook/OpenBIC@b25ee19a81f110e744af6fb62870dcca3cba93d7 🚀,https://github.com/facebook/OpenBIC/deployments/github-pages,"{""ConnectionId"":1,""Name"":""facebook/OpenBIC""}",_raw_github_graphql_deployment,1,
diff --git a/backend/plugins/github_graphql/impl/impl.go b/backend/plugins/github_graphql/impl/impl.go
index 66433699c..a1d77d176 100644
--- a/backend/plugins/github_graphql/impl/impl.go
+++ b/backend/plugins/github_graphql/impl/impl.go
@@ -36,6 +36,7 @@ import (
 	githubImpl "github.com/apache/incubator-devlake/plugins/github/impl"
 	"github.com/apache/incubator-devlake/plugins/github/models"
 	githubTasks "github.com/apache/incubator-devlake/plugins/github/tasks"
+	"github.com/apache/incubator-devlake/plugins/github_graphql/model/migrationscripts"
 	"github.com/apache/incubator-devlake/plugins/github_graphql/tasks"
 	"github.com/merico-dev/graphql"
 	"golang.org/x/oauth2"
@@ -49,6 +50,7 @@ var _ interface {
 	plugin.PluginModel
 	plugin.PluginSource
 	plugin.CloseablePluginTask
+	plugin.PluginMigration
 } = (*GithubGraphql)(nil)
 
 type GithubGraphql struct{}
@@ -279,3 +281,7 @@ func (p GithubGraphql) Close(taskCtx plugin.TaskContext) errors.Error {
 	data.GraphqlClient.Release()
 	return nil
 }
+
+func (p GithubGraphql) MigrationScripts() []plugin.MigrationScript {
+	return migrationscripts.All()
+}
diff --git a/backend/plugins/github_graphql/model/migrationscripts/20240808_flush_rawdata.go b/backend/plugins/github_graphql/model/migrationscripts/20240808_flush_rawdata.go
new file mode 100644
index 000000000..57039e18d
--- /dev/null
+++ b/backend/plugins/github_graphql/model/migrationscripts/20240808_flush_rawdata.go
@@ -0,0 +1,51 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+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.
+*/
+
+package migrationscripts
+
+import (
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/dal"
+	"github.com/apache/incubator-devlake/core/errors"
+	"github.com/apache/incubator-devlake/core/plugin"
+)
+
+var _ plugin.MigrationScript = (*flushRawData)(nil)
+
+type flushRawData struct{}
+
+func (*flushRawData) Up(basicRes context.BasicRes) errors.Error {
+	db := basicRes.GetDal()
+	errors.Must(db.Delete("_devlake_collector_latest_state", dal.Where("raw_data_table like ?", "_raw_github_graphql_%")))
+	_ = db.DropTables(
+		"_raw_github_graphql_accounts",
+		"_raw_github_graphql_deployment",
+		"_raw_github_graphql_issues",
+		"_raw_github_graphql_jobs",
+		"_raw_github_graphql_prs",
+		"_raw_github_graphql_release",
+	)
+	return nil
+}
+
+func (*flushRawData) Version() uint64 {
+	return 20240808141953
+}
+
+func (*flushRawData) Name() string {
+	return "flush github graphql raw data due to storaging granularity changed from per page to per item"
+}
diff --git a/backend/plugins/github_graphql/model/migrationscripts/register.go b/backend/plugins/github_graphql/model/migrationscripts/register.go
new file mode 100644
index 000000000..ae69d62a9
--- /dev/null
+++ b/backend/plugins/github_graphql/model/migrationscripts/register.go
@@ -0,0 +1,29 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+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.
+*/
+
+package migrationscripts
+
+import (
+	"github.com/apache/incubator-devlake/core/plugin"
+)
+
+// All return all the migration scripts
+func All() []plugin.MigrationScript {
+	return []plugin.MigrationScript{
+		new(flushRawData),
+	}
+}


(incubator-devlake) 01/19: refactor: remove extraction logic from github graphql collector

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 5a6c3f933c828fb0f0d2172802e9a396795212ab
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Mon Aug 5 22:08:03 2024 +0800

    refactor: remove extraction logic from github graphql collector
---
 backend/helpers/pluginhelper/api/batch_save.go     |   2 +-
 .../helpers/pluginhelper/api/graphql_collector.go  | 205 +++++----------------
 .../github_graphql/tasks/account_collector.go      |  12 +-
 .../github_graphql/tasks/deployment_collector.go   |  10 +-
 .../github_graphql/tasks/issue_collector.go        |  10 +-
 .../plugins/github_graphql/tasks/job_collector.go  |  20 +-
 .../plugins/github_graphql/tasks/pr_collector.go   |  13 +-
 .../plugins/github_graphql/tasks/pr_extractor.go   | 137 +++++++-------
 .../github_graphql/tasks/release_collector.go      |  17 +-
 9 files changed, 164 insertions(+), 262 deletions(-)

diff --git a/backend/helpers/pluginhelper/api/batch_save.go b/backend/helpers/pluginhelper/api/batch_save.go
index 623082536..42a71c18d 100644
--- a/backend/helpers/pluginhelper/api/batch_save.go
+++ b/backend/helpers/pluginhelper/api/batch_save.go
@@ -50,7 +50,7 @@ type BatchSave struct {
 // NewBatchSave creates a new BatchSave instance
 func NewBatchSave(basicRes context.BasicRes, slotType reflect.Type, size int, tableName ...string) (*BatchSave, errors.Error) {
 	if slotType.Kind() != reflect.Ptr {
-		return nil, errors.Default.New("slotType must be a pointer")
+		panic(errors.Default.New("slotType must be a pointer"))
 	}
 	db := basicRes.GetDal()
 	primaryKey := db.GetPrimaryKeyFields(slotType)
diff --git a/backend/helpers/pluginhelper/api/graphql_collector.go b/backend/helpers/pluginhelper/api/graphql_collector.go
index d0adbbabb..f1d74a7cb 100644
--- a/backend/helpers/pluginhelper/api/graphql_collector.go
+++ b/backend/helpers/pluginhelper/api/graphql_collector.go
@@ -26,7 +26,6 @@ import (
 
 	"github.com/apache/incubator-devlake/core/dal"
 	"github.com/apache/incubator-devlake/core/errors"
-	"github.com/apache/incubator-devlake/core/models/common"
 	plugin "github.com/apache/incubator-devlake/core/plugin"
 	"github.com/merico-dev/graphql"
 )
@@ -79,8 +78,8 @@ type GraphqlCollectorArgs struct {
 	GetPageInfo func(query interface{}, args *GraphqlCollectorArgs) (*GraphqlQueryPageInfo, error)
 	BatchSize   int
 	// one of ResponseParser and ResponseParserEvenWhenDataErrors is required to parse response
-	ResponseParser               func(query interface{}, variables map[string]interface{}) ([]interface{}, error)
-	ResponseParserWithDataErrors func(query interface{}, variables map[string]interface{}, dataErrors []graphql.DataError) ([]interface{}, error)
+	ResponseParser    func(queryWrapper interface{}) ([]json.RawMessage, errors.Error)
+	IgnoreQueryErrors bool
 }
 
 // GraphqlCollector help you collect data from Graphql services
@@ -88,6 +87,7 @@ type GraphqlCollector struct {
 	*RawDataSubTask
 	args         *GraphqlCollectorArgs
 	workerErrors []error
+	batchSave    *BatchSave
 }
 
 // ErrFinishCollect is an error which will finish this collector
@@ -105,19 +105,25 @@ func NewGraphqlCollector(args GraphqlCollectorArgs) (*GraphqlCollector, errors.E
 	if args.GraphqlClient == nil {
 		return nil, errors.Default.New("ApiClient is required")
 	}
-	if args.ResponseParser == nil && args.ResponseParserWithDataErrors == nil {
+	if args.ResponseParser == nil {
 		return nil, errors.Default.New("one of ResponseParser and ResponseParserWithDataErrors is required")
 	}
-	apiCollector := &GraphqlCollector{
-		RawDataSubTask: rawDataSubTask,
-		args:           &args,
-	}
 	if args.BatchSize == 0 {
-		args.BatchSize = 500
+		args.BatchSize = 100
 	}
 	if args.InputStep == 0 {
 		args.InputStep = 1
 	}
+	apiCollector := &GraphqlCollector{
+		RawDataSubTask: rawDataSubTask,
+		args:           &args,
+		batchSave: errors.Must1(NewBatchSave(
+			args.Ctx,
+			reflect.TypeOf(&RawData{}),
+			args.BatchSize,
+			rawDataSubTask.table,
+		)),
+	}
 	return apiCollector, nil
 }
 
@@ -133,21 +139,13 @@ func (collector *GraphqlCollector) Execute() errors.Error {
 		return errors.Default.Wrap(err, "error running auto-migrate")
 	}
 
-	divider := NewBatchSaveDivider(collector.args.Ctx, collector.args.BatchSize, collector.table, collector.params)
-
 	isIncremental := collector.args.Incremental
 	syncPolicy := collector.args.Ctx.TaskContext().SyncPolicy()
 	if syncPolicy != nil && syncPolicy.FullSync {
 		isIncremental = false
 	}
 	// flush data if not incremental collection
-	if isIncremental {
-		// re extract data for new scope config
-		err = collector.ExtractExistRawData(divider)
-		if err != nil {
-			collector.checkError(err)
-		}
-	} else {
+	if !isIncremental {
 		err = db.Delete(&RawData{}, dal.From(collector.table), dal.Where("params = ?", collector.params))
 		if err != nil {
 			return errors.Default.Wrap(err, "error deleting data from collector")
@@ -166,7 +164,7 @@ func (collector *GraphqlCollector) Execute() errors.Error {
 					collector.checkError(err)
 					break
 				}
-				collector.exec(divider, input)
+				collector.exec(input)
 			}
 		} else {
 			for !collector.HasError() {
@@ -182,12 +180,12 @@ func (collector *GraphqlCollector) Execute() errors.Error {
 				if inputs == nil {
 					break
 				}
-				collector.exec(divider, inputs)
+				collector.exec(inputs)
 			}
 		}
 	} else {
 		// or we just did it once
-		collector.exec(divider, nil)
+		collector.exec(nil)
 	}
 
 	logger.Debug("wait for all async api to finished")
@@ -202,11 +200,11 @@ func (collector *GraphqlCollector) Execute() errors.Error {
 		logger.Info("ended api collection without error")
 	}
 
-	err = divider.Close()
+	err = collector.batchSave.Close()
 	return err
 }
 
-func (collector *GraphqlCollector) exec(divider *BatchSaveDivider, input interface{}) {
+func (collector *GraphqlCollector) exec(input interface{}) {
 	inputJson, err := json.Marshal(input)
 	if err != nil {
 		collector.checkError(errors.Default.Wrap(err, `input can not be marshal to json`))
@@ -219,14 +217,14 @@ func (collector *GraphqlCollector) exec(divider *BatchSaveDivider, input interfa
 		Size:       collector.args.PageSize,
 	}
 	if collector.args.GetPageInfo != nil {
-		collector.fetchOneByOne(divider, reqData)
+		collector.fetchOneByOne(reqData)
 	} else {
-		collector.fetchAsync(divider, reqData, nil)
+		collector.fetchAsync(reqData, nil)
 	}
 }
 
 // fetchOneByOne fetches data of all pages for APIs that return paging information
-func (collector *GraphqlCollector) fetchOneByOne(divider *BatchSaveDivider, reqData *GraphqlRequestData) {
+func (collector *GraphqlCollector) fetchOneByOne(reqData *GraphqlRequestData) {
 	// fetch first page
 	var fetchNextPage func(query interface{}) errors.Error
 	fetchNextPage = func(query interface{}) errors.Error {
@@ -247,119 +245,16 @@ func (collector *GraphqlCollector) fetchOneByOne(divider *BatchSaveDivider, reqD
 					Input:     reqData.Input,
 					InputJSON: reqData.InputJSON,
 				}
-				collector.fetchAsync(divider, reqDataTemp, fetchNextPage)
+				collector.fetchAsync(reqDataTemp, fetchNextPage)
 				return nil
 			}, collector.checkError)
 		}
 		return nil
 	}
-	collector.fetchAsync(divider, reqData, fetchNextPage)
-}
-
-// BatchSaveWithOrigin save the results and fill raw data origin for them
-func (collector *GraphqlCollector) BatchSaveWithOrigin(divider *BatchSaveDivider, results []interface{}, row *RawData) errors.Error {
-	// batch save divider
-	RAW_DATA_ORIGIN := "RawDataOrigin"
-	for _, result := range results {
-		// get the batch operator for the specific type
-		batch, err := divider.ForType(reflect.TypeOf(result))
-		if err != nil {
-			return err
-		}
-		// set raw data origin field
-		origin := reflect.ValueOf(result).Elem().FieldByName(RAW_DATA_ORIGIN)
-		if origin.IsValid() && origin.IsZero() {
-			origin.Set(reflect.ValueOf(common.RawDataOrigin{
-				RawDataTable:  collector.table,
-				RawDataId:     row.ID,
-				RawDataParams: row.Params,
-			}))
-		}
-		// records get saved into db when slots were max outed
-		err = batch.Add(result)
-		if err != nil {
-			return errors.Default.Wrap(err, "error adding result to batch")
-		}
-	}
-	return nil
-}
-
-// ExtractExistRawData will extract data from existing data from raw layer if increment
-func (collector *GraphqlCollector) ExtractExistRawData(divider *BatchSaveDivider) errors.Error {
-	// load data from database
-	db := collector.args.Ctx.GetDal()
-	logger := collector.args.Ctx.GetLogger()
-
-	clauses := []dal.Clause{
-		dal.From(collector.table),
-		dal.Where("params = ?", collector.params),
-		dal.Orderby("id ASC"),
-	}
-
-	count, err := db.Count(clauses...)
-	if err != nil {
-		return errors.Default.Wrap(err, "error getting count of clauses")
-	}
-	cursor, err := db.Cursor(clauses...)
-	if err != nil {
-		return errors.Default.Wrap(err, "error running DB query")
-	}
-	logger.Info("get data from %s where params=%s and got %d", collector.table, collector.params, count)
-	defer cursor.Close()
-
-	// progress
-	collector.args.Ctx.SetProgress(0, -1)
-	ctx := collector.args.Ctx.GetContext()
-	// iterate all rows
-	for cursor.Next() {
-		select {
-		case <-ctx.Done():
-			return errors.Convert(ctx.Err())
-		default:
-		}
-		// get the type of query and variables. For each iteration, the query should be a different object
-		query, variables, _ := collector.args.BuildQuery(nil)
-		row := &RawData{}
-		err = db.Fetch(cursor, row)
-		if err != nil {
-			return errors.Default.Wrap(err, "error fetching row")
-		}
-
-		err = errors.Convert(json.Unmarshal(row.Data, &query))
-		if err != nil {
-			return errors.Default.Wrap(err, `graphql collector unmarshal query failed`)
-		}
-		err = errors.Convert(json.Unmarshal(row.Input, &variables))
-		if err != nil {
-			return errors.Default.Wrap(err, `variables in graphql query can not unmarshal from json`)
-		}
-
-		var results []interface{}
-		if collector.args.ResponseParserWithDataErrors != nil {
-			results, err = errors.Convert01(collector.args.ResponseParserWithDataErrors(query, variables, nil))
-		} else {
-			results, err = errors.Convert01(collector.args.ResponseParser(query, variables))
-		}
-		if err != nil {
-			if errors.Is(err, ErrFinishCollect) {
-				logger.Info("existing data parser return ErrFinishCollect, but skip. rawId: #%d", row.ID)
-			} else {
-				return errors.Default.Wrap(err, "error calling plugin Extract implementation")
-			}
-		}
-		err = collector.BatchSaveWithOrigin(divider, results, row)
-		if err != nil {
-			return err
-		}
-
-		collector.args.Ctx.IncProgress(1)
-	}
-
-	// save the last batches
-	return divider.Close()
+	collector.fetchAsync(reqData, fetchNextPage)
 }
 
-func (collector *GraphqlCollector) fetchAsync(divider *BatchSaveDivider, reqData *GraphqlRequestData, handler func(query interface{}) errors.Error) {
+func (collector *GraphqlCollector) fetchAsync(reqData *GraphqlRequestData, handler func(query interface{}) errors.Error) {
 	if reqData.Pager == nil {
 		reqData.Pager = &CursorPager{
 			SkipCursor: nil,
@@ -373,6 +268,7 @@ func (collector *GraphqlCollector) fetchAsync(divider *BatchSaveDivider, reqData
 	}
 
 	logger := collector.args.Ctx.GetLogger()
+	db := collector.args.Ctx.GetDal()
 	dataErrors, err := collector.args.GraphqlClient.Query(query, variables)
 	if err != nil {
 		if err == context.Canceled {
@@ -384,7 +280,7 @@ func (collector *GraphqlCollector) fetchAsync(divider *BatchSaveDivider, reqData
 		return
 	}
 	if len(dataErrors) > 0 {
-		if collector.args.ResponseParserWithDataErrors == nil {
+		if !collector.args.IgnoreQueryErrors {
 			for _, dataError := range dataErrors {
 				collector.checkError(errors.Default.Wrap(dataError, `graphql query got error`))
 			}
@@ -394,50 +290,37 @@ func (collector *GraphqlCollector) fetchAsync(divider *BatchSaveDivider, reqData
 	}
 	defer logger.Debug("fetchAsync >>> done for %v %v", query, variables)
 
-	paramsBytes, err := json.Marshal(query)
-	if err != nil {
-		collector.checkError(errors.Default.Wrap(err, `graphql collector marshal query failed`))
-		return
-	}
-	db := collector.args.Ctx.GetDal()
 	queryStr, _ := graphql.ConstructQuery(query, variables)
 	variablesJson, err := json.Marshal(variables)
 	if err != nil {
 		collector.checkError(errors.Default.Wrap(err, `variables in graphql query can not marshal to json`))
 		return
 	}
-	row := &RawData{
-		Params: collector.params,
-		Data:   paramsBytes,
-		Url:    queryStr,
-		Input:  variablesJson,
-	}
-	err = db.Create(row, dal.From(collector.table))
-	if err != nil {
-		collector.checkError(errors.Default.Wrap(err, `not created row table in graphql collector`))
-		return
-	}
 
-	var results []interface{}
-	if collector.args.ResponseParserWithDataErrors != nil {
-		results, err = collector.args.ResponseParserWithDataErrors(query, variables, dataErrors)
-	} else {
-		results, err = collector.args.ResponseParser(query, variables)
+	results, err := collector.args.ResponseParser(query)
+	for _, result := range results {
+		row := &RawData{
+			Params: collector.params,
+			Data:   result,
+			Url:    queryStr,
+			Input:  variablesJson,
+		}
+		// collector.batchSave.Add(row)
+		err = db.Create(row, dal.From(collector.table))
+		if err != nil {
+			collector.checkError(errors.Default.Wrap(err, `not created row table in graphql collector`))
+			return
+		}
 	}
 	if err != nil {
 		if errors.Is(err, ErrFinishCollect) {
-			logger.Info("collector finish by parser, rawId: #%d", row.ID)
+			logger.Info("collector finish by parser")
 			handler = nil
 		} else {
 			collector.checkError(errors.Default.Wrap(err, `not parsed response in graphql collector`))
 			return
 		}
 	}
-	err = collector.BatchSaveWithOrigin(divider, results, row)
-	if err != nil {
-		collector.checkError(err)
-		return
-	}
 
 	collector.args.Ctx.IncProgress(1)
 	if handler != nil {
diff --git a/backend/plugins/github_graphql/tasks/account_collector.go b/backend/plugins/github_graphql/tasks/account_collector.go
index ad16068c4..27d71b65f 100644
--- a/backend/plugins/github_graphql/tasks/account_collector.go
+++ b/backend/plugins/github_graphql/tasks/account_collector.go
@@ -18,6 +18,7 @@ limitations under the License.
 package tasks
 
 import (
+	"encoding/json"
 	"reflect"
 
 	"github.com/apache/incubator-devlake/core/dal"
@@ -118,13 +119,14 @@ func CollectAccount(taskCtx plugin.SubTaskContext) errors.Error {
 			}
 			return query, variables, nil
 		},
-		ResponseParserWithDataErrors: func(iQuery interface{}, variables map[string]interface{}, dataErrors []graphql.DataError) ([]interface{}, error) {
-			for _, dataError := range dataErrors {
-				// log and ignore
-				taskCtx.GetLogger().Warn(dataError, `query user get error but ignore`)
+		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
+			query := queryWrapper.(*GraphqlQueryAccountWrapper)
+			for _, rawL := range query.Users {
+				messages = append(messages, errors.Must1(json.Marshal(rawL)))
 			}
-			return nil, nil
+			return
 		},
+		IgnoreQueryErrors: true,
 	})
 
 	if err != nil {
diff --git a/backend/plugins/github_graphql/tasks/deployment_collector.go b/backend/plugins/github_graphql/tasks/deployment_collector.go
index 99ddc493f..b28c8deca 100644
--- a/backend/plugins/github_graphql/tasks/deployment_collector.go
+++ b/backend/plugins/github_graphql/tasks/deployment_collector.go
@@ -18,6 +18,7 @@ limitations under the License.
 package tasks
 
 import (
+	"encoding/json"
 	"strings"
 	"time"
 
@@ -129,15 +130,16 @@ func CollectDeployments(taskCtx plugin.SubTaskContext) errors.Error {
 			query := iQuery.(*GraphqlQueryDeploymentWrapper)
 			return query.Repository.Deployments.PageInfo, nil
 		},
-		ResponseParser: func(iQuery interface{}, variables map[string]interface{}) ([]interface{}, error) {
-			query := iQuery.(*GraphqlQueryDeploymentWrapper)
+		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
+			query := queryWrapper.(*GraphqlQueryDeploymentWrapper)
 			deployments := query.Repository.Deployments.Deployments
 			for _, rawL := range deployments {
 				if apiCollector.GetSince() != nil && !apiCollector.GetSince().Before(rawL.UpdatedAt) {
-					return nil, helper.ErrFinishCollect
+					return messages, helper.ErrFinishCollect
 				}
+				messages = append(messages, errors.Must1(json.Marshal(rawL)))
 			}
-			return nil, nil
+			return
 		},
 	})
 	if err != nil {
diff --git a/backend/plugins/github_graphql/tasks/issue_collector.go b/backend/plugins/github_graphql/tasks/issue_collector.go
index dbf1b1e95..f2d27cc5f 100644
--- a/backend/plugins/github_graphql/tasks/issue_collector.go
+++ b/backend/plugins/github_graphql/tasks/issue_collector.go
@@ -18,6 +18,7 @@ limitations under the License.
 package tasks
 
 import (
+	"encoding/json"
 	"strings"
 	"time"
 
@@ -115,15 +116,16 @@ func CollectIssues(taskCtx plugin.SubTaskContext) errors.Error {
 			query := iQuery.(*GraphqlQueryIssueWrapper)
 			return query.Repository.IssueList.PageInfo, nil
 		},
-		ResponseParser: func(iQuery interface{}, variables map[string]interface{}) ([]interface{}, error) {
-			query := iQuery.(*GraphqlQueryIssueWrapper)
+		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
+			query := queryWrapper.(*GraphqlQueryIssueWrapper)
 			issues := query.Repository.IssueList.Issues
 			for _, rawL := range issues {
 				if apiCollector.GetSince() != nil && !apiCollector.GetSince().Before(rawL.UpdatedAt) {
-					return nil, helper.ErrFinishCollect
+					return messages, helper.ErrFinishCollect
 				}
+				messages = append(messages, errors.Must1(json.Marshal(rawL)))
 			}
-			return nil, nil
+			return
 		},
 	})
 	if err != nil {
diff --git a/backend/plugins/github_graphql/tasks/job_collector.go b/backend/plugins/github_graphql/tasks/job_collector.go
index effac75ff..10694e56a 100644
--- a/backend/plugins/github_graphql/tasks/job_collector.go
+++ b/backend/plugins/github_graphql/tasks/job_collector.go
@@ -18,6 +18,7 @@ limitations under the License.
 package tasks
 
 import (
+	"encoding/json"
 	"reflect"
 	"time"
 
@@ -156,13 +157,22 @@ func CollectJobs(taskCtx plugin.SubTaskContext) errors.Error {
 			}
 			return query, variables, nil
 		},
-		ResponseParserWithDataErrors: func(iQuery interface{}, variables map[string]interface{}, dataErrors []graphql.DataError) ([]interface{}, error) {
-			for _, dataError := range dataErrors {
-				// log and ignore
-				taskCtx.GetLogger().Warn(dataError, `query check run get error but ignore`)
+		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
+			query := queryWrapper.(*GraphqlQueryCheckRunWrapper)
+			for _, node := range query.Node {
+				checkRun := node.CheckSuite.CheckRuns.Nodes[0]
+				updatedAt := checkRun.StartedAt
+				if checkRun.CompletedAt != nil {
+					updatedAt = checkRun.CompletedAt
+				}
+				if apiCollector.GetSince() != nil && !apiCollector.GetSince().Before(*updatedAt) {
+					return messages, helper.ErrFinishCollect
+				}
+				messages = append(messages, errors.Must1(json.Marshal(node)))
 			}
-			return nil, nil
+			return
 		},
+		IgnoreQueryErrors: true,
 	})
 	if err != nil {
 		return err
diff --git a/backend/plugins/github_graphql/tasks/pr_collector.go b/backend/plugins/github_graphql/tasks/pr_collector.go
index a129d3b31..9e457e5b9 100644
--- a/backend/plugins/github_graphql/tasks/pr_collector.go
+++ b/backend/plugins/github_graphql/tasks/pr_collector.go
@@ -18,6 +18,7 @@ limitations under the License.
 package tasks
 
 import (
+	"encoding/json"
 	"strings"
 	"time"
 
@@ -170,6 +171,7 @@ func CollectPrs(taskCtx plugin.SubTaskContext) errors.Error {
 		return err
 	}
 
+	since := apiCollector.GetSince()
 	err = apiCollector.InitGraphQLCollector(api.GraphqlCollectorArgs{
 		GraphqlClient: data.GraphqlClient,
 		PageSize:      10,
@@ -194,15 +196,16 @@ func CollectPrs(taskCtx plugin.SubTaskContext) errors.Error {
 			query := iQuery.(*GraphqlQueryPrWrapper)
 			return query.Repository.PullRequests.PageInfo, nil
 		},
-		ResponseParser: func(iQuery interface{}, variables map[string]interface{}) ([]interface{}, error) {
-			query := iQuery.(*GraphqlQueryPrWrapper)
+		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
+			query := queryWrapper.(*GraphqlQueryPrWrapper)
 			prs := query.Repository.PullRequests.Prs
 			for _, rawL := range prs {
-				if apiCollector.GetSince() != nil && !apiCollector.GetSince().Before(rawL.CreatedAt) {
-					return nil, api.ErrFinishCollect
+				if since != nil && since.After(rawL.UpdatedAt) {
+					return messages, api.ErrFinishCollect
 				}
+				messages = append(messages, errors.Must1(json.Marshal(rawL)))
 			}
-			return nil, nil
+			return
 		},
 	})
 	if err != nil {
diff --git a/backend/plugins/github_graphql/tasks/pr_extractor.go b/backend/plugins/github_graphql/tasks/pr_extractor.go
index 0b4885328..59bc72cdb 100644
--- a/backend/plugins/github_graphql/tasks/pr_extractor.go
+++ b/backend/plugins/github_graphql/tasks/pr_extractor.go
@@ -67,88 +67,85 @@ func ExtractPrs(taskCtx plugin.SubTaskContext) errors.Error {
 			Table: RAW_PRS_TABLE,
 		},
 		Extract: func(row *api.RawData) ([]interface{}, errors.Error) {
-			apiPr := &GraphqlQueryPrWrapper{}
-			err := errors.Convert(json.Unmarshal(row.Data, apiPr))
+			rawL := &GraphqlQueryPr{}
+			err := errors.Convert(json.Unmarshal(row.Data, rawL))
 			if err != nil {
 				return nil, err
 			}
 
-			prs := apiPr.Repository.PullRequests.Prs
 			results := make([]interface{}, 0, 1)
-			for _, rawL := range prs {
-				githubPr, err := convertGithubPullRequest(rawL, data.Options.ConnectionId, data.Options.GithubId)
-				if err != nil {
-					return nil, err
+			githubPr, err := convertGithubPullRequest(rawL, data.Options.ConnectionId, data.Options.GithubId)
+			if err != nil {
+				return nil, err
+			}
+			extractGraphqlPreAccount(&results, rawL.Author, data.Options.GithubId, data.Options.ConnectionId)
+			for _, label := range rawL.Labels.Nodes {
+				results = append(results, &models.GithubPrLabel{
+					ConnectionId: data.Options.ConnectionId,
+					PullId:       githubPr.GithubId,
+					LabelName:    label.Name,
+				})
+				// if pr.Type has not been set and prType is set in .env, process the below
+				if labelTypeRegex != nil && labelTypeRegex.MatchString(label.Name) {
+					githubPr.Type = label.Name
 				}
-				extractGraphqlPreAccount(&results, rawL.Author, data.Options.GithubId, data.Options.ConnectionId)
-				for _, label := range rawL.Labels.Nodes {
-					results = append(results, &models.GithubPrLabel{
-						ConnectionId: data.Options.ConnectionId,
-						PullId:       githubPr.GithubId,
-						LabelName:    label.Name,
-					})
-					// if pr.Type has not been set and prType is set in .env, process the below
-					if labelTypeRegex != nil && labelTypeRegex.MatchString(label.Name) {
-						githubPr.Type = label.Name
-					}
-					// if pr.Component has not been set and prComponent is set in .env, process
-					if labelComponentRegex != nil && labelComponentRegex.MatchString(label.Name) {
-						githubPr.Component = label.Name
+				// if pr.Component has not been set and prComponent is set in .env, process
+				if labelComponentRegex != nil && labelComponentRegex.MatchString(label.Name) {
+					githubPr.Component = label.Name
 
-					}
-				}
-				results = append(results, githubPr)
-
-				for _, apiPullRequestReview := range rawL.Reviews.Nodes {
-					if apiPullRequestReview.State != "PENDING" {
-						githubPrReview := &models.GithubPrReview{
-							ConnectionId:   data.Options.ConnectionId,
-							GithubId:       apiPullRequestReview.DatabaseId,
-							Body:           apiPullRequestReview.Body,
-							State:          apiPullRequestReview.State,
-							CommitSha:      apiPullRequestReview.Commit.Oid,
-							GithubSubmitAt: apiPullRequestReview.SubmittedAt,
-
-							PullRequestId: githubPr.GithubId,
-						}
-
-						if apiPullRequestReview.Author != nil {
-							githubPrReview.AuthorUserId = apiPullRequestReview.Author.Id
-							githubPrReview.AuthorUsername = apiPullRequestReview.Author.Login
-							extractGraphqlPreAccount(&results, apiPullRequestReview.Author, data.Options.GithubId, data.Options.ConnectionId)
-						}
-
-						results = append(results, githubPrReview)
-					}
 				}
-				for _, apiReviewRequests := range rawL.ReviewRequests.Nodes {
-					githubReviewRequests := &models.GithubReviewer{
-						ConnectionId:  data.Options.ConnectionId,
+			}
+			results = append(results, githubPr)
+
+			for _, apiPullRequestReview := range rawL.Reviews.Nodes {
+				if apiPullRequestReview.State != "PENDING" {
+					githubPrReview := &models.GithubPrReview{
+						ConnectionId:   data.Options.ConnectionId,
+						GithubId:       apiPullRequestReview.DatabaseId,
+						Body:           apiPullRequestReview.Body,
+						State:          apiPullRequestReview.State,
+						CommitSha:      apiPullRequestReview.Commit.Oid,
+						GithubSubmitAt: apiPullRequestReview.SubmittedAt,
+
 						PullRequestId: githubPr.GithubId,
-						ReviewerId:    apiReviewRequests.RequestedReviewer.User.Id,
-						Username:      apiReviewRequests.RequestedReviewer.User.Login,
 					}
-					results = append(results, githubReviewRequests)
-				}
 
-				for _, apiPullRequestCommit := range rawL.Commits.Nodes {
-					githubCommit, err := convertPullRequestCommit(apiPullRequestCommit)
-					if err != nil {
-						return nil, err
-					}
-					results = append(results, githubCommit)
-
-					githubPullRequestCommit := &models.GithubPrCommit{
-						ConnectionId:       data.Options.ConnectionId,
-						CommitSha:          apiPullRequestCommit.Commit.Oid,
-						PullRequestId:      githubPr.GithubId,
-						CommitAuthorName:   githubCommit.AuthorName,
-						CommitAuthorEmail:  githubCommit.AuthorEmail,
-						CommitAuthoredDate: githubCommit.AuthoredDate,
+					if apiPullRequestReview.Author != nil {
+						githubPrReview.AuthorUserId = apiPullRequestReview.Author.Id
+						githubPrReview.AuthorUsername = apiPullRequestReview.Author.Login
+						extractGraphqlPreAccount(&results, apiPullRequestReview.Author, data.Options.GithubId, data.Options.ConnectionId)
 					}
-					results = append(results, githubPullRequestCommit)
-					extractGraphqlPreAccount(&results, apiPullRequestCommit.Commit.Author.User, data.Options.GithubId, data.Options.ConnectionId)
+
+					results = append(results, githubPrReview)
+				}
+			}
+			for _, apiReviewRequests := range rawL.ReviewRequests.Nodes {
+				githubReviewRequests := &models.GithubReviewer{
+					ConnectionId:  data.Options.ConnectionId,
+					PullRequestId: githubPr.GithubId,
+					ReviewerId:    apiReviewRequests.RequestedReviewer.User.Id,
+					Username:      apiReviewRequests.RequestedReviewer.User.Login,
+				}
+				results = append(results, githubReviewRequests)
+			}
+
+			for _, apiPullRequestCommit := range rawL.Commits.Nodes {
+				githubCommit, err := convertPullRequestCommit(apiPullRequestCommit)
+				if err != nil {
+					return nil, err
+				}
+				results = append(results, githubCommit)
+
+				githubPullRequestCommit := &models.GithubPrCommit{
+					ConnectionId:       data.Options.ConnectionId,
+					CommitSha:          apiPullRequestCommit.Commit.Oid,
+					PullRequestId:      githubPr.GithubId,
+					CommitAuthorName:   githubCommit.AuthorName,
+					CommitAuthorEmail:  githubCommit.AuthorEmail,
+					CommitAuthoredDate: githubCommit.AuthoredDate,
 				}
+				results = append(results, githubPullRequestCommit)
+				extractGraphqlPreAccount(&results, apiPullRequestCommit.Commit.Author.User, data.Options.GithubId, data.Options.ConnectionId)
 			}
 			return results, nil
 		},
@@ -161,7 +158,7 @@ func ExtractPrs(taskCtx plugin.SubTaskContext) errors.Error {
 	return extractor.Execute()
 }
 
-func convertGithubPullRequest(pull GraphqlQueryPr, connId uint64, repoId int) (*models.GithubPullRequest, errors.Error) {
+func convertGithubPullRequest(pull *GraphqlQueryPr, connId uint64, repoId int) (*models.GithubPullRequest, errors.Error) {
 	githubPull := &models.GithubPullRequest{
 		ConnectionId:    connId,
 		GithubId:        pull.DatabaseId,
diff --git a/backend/plugins/github_graphql/tasks/release_collector.go b/backend/plugins/github_graphql/tasks/release_collector.go
index 4b71626d0..0090bd60c 100644
--- a/backend/plugins/github_graphql/tasks/release_collector.go
+++ b/backend/plugins/github_graphql/tasks/release_collector.go
@@ -18,6 +18,7 @@ limitations under the License.
 package tasks
 
 import (
+	"encoding/json"
 	"strings"
 	"time"
 
@@ -97,6 +98,7 @@ func CollectRelease(taskCtx plugin.SubTaskContext) errors.Error {
 		return err
 	}
 
+	since := apiCollector.GetSince()
 	err = apiCollector.InitGraphQLCollector(helper.GraphqlCollectorArgs{
 		GraphqlClient: data.GraphqlClient,
 		PageSize:      100,
@@ -119,15 +121,16 @@ func CollectRelease(taskCtx plugin.SubTaskContext) errors.Error {
 			query := iQuery.(*GraphqlQueryReleaseWrapper)
 			return query.Repository.Releases.PageInfo, nil
 		},
-		ResponseParser: func(iQuery interface{}, variables map[string]interface{}) ([]interface{}, error) {
-			query := iQuery.(*GraphqlQueryReleaseWrapper)
-			deployments := query.Repository.Releases.Releases
-			for _, rawL := range deployments {
-				if apiCollector.GetSince() != nil && !apiCollector.GetSince().Before(rawL.UpdatedAt) {
-					return nil, helper.ErrFinishCollect
+		ResponseParser: func(queryWrapper any) (messages []json.RawMessage, err errors.Error) {
+			query := queryWrapper.(*GraphqlQueryReleaseWrapper)
+			releases := query.Repository.Releases.Releases
+			for _, rawL := range releases {
+				if since != nil && since.After(rawL.UpdatedAt) {
+					return messages, helper.ErrFinishCollect
 				}
+				messages = append(messages, errors.Must1(json.Marshal(rawL)))
 			}
-			return nil, nil
+			return
 		},
 	})
 	if err != nil {


(incubator-devlake) 16/19: fix: change gitee issue components field to text

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 7857bd50953b2f6b0ade6f426fddce14ea441b73
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 16:04:18 2024 +0800

    fix: change gitee issue components field to text
---
 backend/plugins/gitee/models/issue.go              |  2 +-
 ....go => 20240813_change_issue_component_type.go} | 23 +++++++++++++++-------
 .../gitee/models/migrationscripts/register.go      |  1 +
 3 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/backend/plugins/gitee/models/issue.go b/backend/plugins/gitee/models/issue.go
index 0753f46f1..60211dcf9 100644
--- a/backend/plugins/gitee/models/issue.go
+++ b/backend/plugins/gitee/models/issue.go
@@ -44,7 +44,7 @@ type GiteeIssue struct {
 	GiteeCreatedAt  time.Time
 	GiteeUpdatedAt  time.Time `gorm:"index"`
 	Severity        string    `gorm:"type:varchar(255)"`
-	Component       string    `gorm:"type:varchar(255)"`
+	Component       string    `gorm:"type:text"`
 	common.NoPKModel
 }
 
diff --git a/backend/plugins/gitee/models/migrationscripts/register.go b/backend/plugins/gitee/models/migrationscripts/20240813_change_issue_component_type.go
similarity index 59%
copy from backend/plugins/gitee/models/migrationscripts/register.go
copy to backend/plugins/gitee/models/migrationscripts/20240813_change_issue_component_type.go
index 5e5ec1388..a669a31dd 100644
--- a/backend/plugins/gitee/models/migrationscripts/register.go
+++ b/backend/plugins/gitee/models/migrationscripts/20240813_change_issue_component_type.go
@@ -18,14 +18,23 @@ limitations under the License.
 package migrationscripts
 
 import (
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
 	"github.com/apache/incubator-devlake/core/plugin"
 )
 
-// All return all the migration scripts
-func All() []plugin.MigrationScript {
-	return []plugin.MigrationScript{
-		new(addInitTables),
-		new(addGiteeCommitAuthorInfo),
-		new(addScopeConfigIdToRepo),
-	}
+var _ plugin.MigrationScript = (*changeIssueComponentType)(nil)
+
+type changeIssueComponentType struct{}
+
+func (script *changeIssueComponentType) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("_tool_gitee_issues", "components", "text")
+}
+
+func (*changeIssueComponentType) Version() uint64 {
+	return 20240813154445
+}
+
+func (*changeIssueComponentType) Name() string {
+	return "change _tool_gitee_issues.components type to text"
 }
diff --git a/backend/plugins/gitee/models/migrationscripts/register.go b/backend/plugins/gitee/models/migrationscripts/register.go
index 5e5ec1388..e089a9bec 100644
--- a/backend/plugins/gitee/models/migrationscripts/register.go
+++ b/backend/plugins/gitee/models/migrationscripts/register.go
@@ -27,5 +27,6 @@ func All() []plugin.MigrationScript {
 		new(addInitTables),
 		new(addGiteeCommitAuthorInfo),
 		new(addScopeConfigIdToRepo),
+		new(changeIssueComponentType),
 	}
 }


(incubator-devlake) 17/19: fix: change github issue components field to text

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 17cd56e6262a8fa9c7fa4141ddcb6af8fce8f01f
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 16:04:42 2024 +0800

    fix: change github issue components field to text
---
 backend/plugins/github/models/issue.go             |  2 +-
 .../20240813_change_issue_component_type.go        | 40 ++++++++++++++++++++++
 .../github/models/migrationscripts/register.go     |  1 +
 3 files changed, 42 insertions(+), 1 deletion(-)

diff --git a/backend/plugins/github/models/issue.go b/backend/plugins/github/models/issue.go
index 80e071cc5..004e89a28 100644
--- a/backend/plugins/github/models/issue.go
+++ b/backend/plugins/github/models/issue.go
@@ -45,7 +45,7 @@ type GithubIssue struct {
 	GithubCreatedAt time.Time
 	GithubUpdatedAt time.Time `gorm:"index"`
 	Severity        string    `gorm:"type:varchar(255)"`
-	Component       string    `gorm:"type:varchar(255)"`
+	Component       string    `gorm:"type:text"`
 	common.NoPKModel
 }
 
diff --git a/backend/plugins/github/models/migrationscripts/20240813_change_issue_component_type.go b/backend/plugins/github/models/migrationscripts/20240813_change_issue_component_type.go
new file mode 100644
index 000000000..be5a3be12
--- /dev/null
+++ b/backend/plugins/github/models/migrationscripts/20240813_change_issue_component_type.go
@@ -0,0 +1,40 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+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.
+*/
+
+package migrationscripts
+
+import (
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
+	"github.com/apache/incubator-devlake/core/plugin"
+)
+
+var _ plugin.MigrationScript = (*changeIssueComponentType)(nil)
+
+type changeIssueComponentType struct{}
+
+func (script *changeIssueComponentType) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("_tool_github_issues", "components", "text")
+}
+
+func (*changeIssueComponentType) Version() uint64 {
+	return 20240813154633
+}
+
+func (*changeIssueComponentType) Name() string {
+	return "change _tool_github_issues.components type to text"
+}
diff --git a/backend/plugins/github/models/migrationscripts/register.go b/backend/plugins/github/models/migrationscripts/register.go
index fec8b5338..346654d99 100644
--- a/backend/plugins/github/models/migrationscripts/register.go
+++ b/backend/plugins/github/models/migrationscripts/register.go
@@ -53,5 +53,6 @@ func All() []plugin.MigrationScript {
 		new(addMergedByToPr),
 		new(restructReviewer),
 		new(addIsDraftToPr),
+		new(changeIssueComponentType),
 	}
 }


(incubator-devlake) 15/19: fix: change bitbucket issue components field to text

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 7a300ef44ec67f684b3353f21e5e21445f0c5fba
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Tue Aug 13 16:04:00 2024 +0800

    fix: change bitbucket issue components field to text
---
 backend/plugins/bitbucket/models/issue.go          |  2 +-
 ....go => 20240813_change_issue_component_type.go} | 39 ++++++++++------------
 .../bitbucket/models/migrationscripts/register.go  |  1 +
 3 files changed, 19 insertions(+), 23 deletions(-)

diff --git a/backend/plugins/bitbucket/models/issue.go b/backend/plugins/bitbucket/models/issue.go
index c4f0d20fb..c24fbf1e8 100644
--- a/backend/plugins/bitbucket/models/issue.go
+++ b/backend/plugins/bitbucket/models/issue.go
@@ -45,7 +45,7 @@ type BitbucketIssue struct {
 	BitbucketCreatedAt time.Time
 	BitbucketUpdatedAt time.Time `gorm:"index"`
 	Severity           string    `gorm:"type:varchar(255)"`
-	Component          string    `gorm:"type:varchar(255)"`
+	Component          string    `gorm:"type:text"`
 	common.NoPKModel
 }
 
diff --git a/backend/plugins/bitbucket/models/migrationscripts/register.go b/backend/plugins/bitbucket/models/migrationscripts/20240813_change_issue_component_type.go
similarity index 52%
copy from backend/plugins/bitbucket/models/migrationscripts/register.go
copy to backend/plugins/bitbucket/models/migrationscripts/20240813_change_issue_component_type.go
index a197be735..0499d0ac2 100644
--- a/backend/plugins/bitbucket/models/migrationscripts/register.go
+++ b/backend/plugins/bitbucket/models/migrationscripts/20240813_change_issue_component_type.go
@@ -18,28 +18,23 @@ limitations under the License.
 package migrationscripts
 
 import (
-	plugin "github.com/apache/incubator-devlake/core/plugin"
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
+	"github.com/apache/incubator-devlake/core/plugin"
 )
 
-// All return all the migration scripts
-func All() []plugin.MigrationScript {
-	return []plugin.MigrationScript{
-		new(addInitTables20220803),
-		new(addPipeline20220914),
-		new(addPrCommits20221008),
-		new(addDeployment20221013),
-		new(addRepoIdAndCommitShaField20221014),
-		new(addScope20230206),
-		new(addPipelineStep20230215),
-		new(addConnectionIdToTransformationRule),
-		new(addTypeEnvToPipelineAndStep),
-		new(addRepoIdField20230411),
-		new(addRepoIdToPr),
-		new(addBitbucketCommitAuthorInfo),
-		new(renameTr2ScopeConfig),
-		new(addRawParamTableForScope),
-		new(addBuildNumberToPipelines),
-		new(reCreatBitBucketPipelineSteps),
-		new(addMergedByToPr),
-	}
+var _ plugin.MigrationScript = (*changeIssueComponentType)(nil)
+
+type changeIssueComponentType struct{}
+
+func (script *changeIssueComponentType) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("_tool_bitbucket_issues", "components", "text")
+}
+
+func (*changeIssueComponentType) Version() uint64 {
+	return 20240813154323
+}
+
+func (*changeIssueComponentType) Name() string {
+	return "change _tool_bitbucket_issues.components type to text"
 }
diff --git a/backend/plugins/bitbucket/models/migrationscripts/register.go b/backend/plugins/bitbucket/models/migrationscripts/register.go
index a197be735..105af2364 100644
--- a/backend/plugins/bitbucket/models/migrationscripts/register.go
+++ b/backend/plugins/bitbucket/models/migrationscripts/register.go
@@ -41,5 +41,6 @@ func All() []plugin.MigrationScript {
 		new(addBuildNumberToPipelines),
 		new(reCreatBitBucketPipelineSteps),
 		new(addMergedByToPr),
+		new(changeIssueComponentType),
 	}
 }


(incubator-devlake) 06/19: refactor: update github account/release extractor to adopt single record extraction

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 26df5896b0a24f1d355cb363e0c2eb8a2acd2d9a
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Wed Aug 7 17:34:58 2024 +0800

    refactor: update github account/release extractor to adopt single record extraction
---
 .../plugins/github_graphql/tasks/account_extractor.go   | 17 +++++++----------
 .../plugins/github_graphql/tasks/release_extractor.go   | 16 +++++++---------
 2 files changed, 14 insertions(+), 19 deletions(-)

diff --git a/backend/plugins/github_graphql/tasks/account_extractor.go b/backend/plugins/github_graphql/tasks/account_extractor.go
index deb5877a9..9be27afda 100644
--- a/backend/plugins/github_graphql/tasks/account_extractor.go
+++ b/backend/plugins/github_graphql/tasks/account_extractor.go
@@ -49,20 +49,17 @@ func ExtractAccounts(taskCtx plugin.SubTaskContext) errors.Error {
 			Table: RAW_ACCOUNTS_TABLE,
 		},
 		Extract: func(row *api.RawData) ([]interface{}, errors.Error) {
-			apiAccount := &GraphqlQueryAccountWrapper{}
-			err := errors.Convert(json.Unmarshal(row.Data, apiAccount))
+			account := &GraphqlQueryAccount{}
+			err := errors.Convert(json.Unmarshal(row.Data, account))
 			if err != nil {
 				return nil, err
 			}
-			accounts := apiAccount.Users
 			var result []interface{}
-			for _, account := range accounts {
-				relatedUsers, err := convertAccount(account, data.Options.ConnectionId)
-				if err != nil {
-					return nil, err
-				}
-				result = append(result, relatedUsers...)
+			relatedUsers, err := convertAccount(account, data.Options.ConnectionId)
+			if err != nil {
+				return nil, err
 			}
+			result = append(result, relatedUsers...)
 			return result, nil
 		},
 	})
@@ -74,7 +71,7 @@ func ExtractAccounts(taskCtx plugin.SubTaskContext) errors.Error {
 	return extractor.Execute()
 }
 
-func convertAccount(res GraphqlQueryAccount, connId uint64) ([]interface{}, errors.Error) {
+func convertAccount(res *GraphqlQueryAccount, connId uint64) ([]interface{}, errors.Error) {
 	results := make([]interface{}, 0, len(res.Organizations.Nodes)+1)
 	githubAccount := &models.GithubAccount{
 		ConnectionId: connId,
diff --git a/backend/plugins/github_graphql/tasks/release_extractor.go b/backend/plugins/github_graphql/tasks/release_extractor.go
index ef98a2803..4b819fc23 100644
--- a/backend/plugins/github_graphql/tasks/release_extractor.go
+++ b/backend/plugins/github_graphql/tasks/release_extractor.go
@@ -19,6 +19,7 @@ package tasks
 
 import (
 	"encoding/json"
+
 	"github.com/apache/incubator-devlake/core/errors"
 	"github.com/apache/incubator-devlake/core/models/common"
 	"github.com/apache/incubator-devlake/core/plugin"
@@ -49,21 +50,18 @@ func ExtractReleases(taskCtx plugin.SubTaskContext) errors.Error {
 			Table: RAW_RELEASE_TABLE,
 		},
 		Extract: func(row *api.RawData) ([]interface{}, errors.Error) {
-			apiDeployment := &GraphqlQueryReleaseWrapper{}
-			err := errors.Convert(json.Unmarshal(row.Data, apiDeployment))
+			release := &GraphqlQueryRelease{}
+			err := errors.Convert(json.Unmarshal(row.Data, release))
 			if err != nil {
 				return nil, err
 			}
 
-			releases := apiDeployment.Repository.Releases.Releases
 			var results []interface{}
-			for _, release := range releases {
-				githubRelease, err := convertGitHubRelease(release, data.Options.ConnectionId, data.Options.GithubId)
-				if err != nil {
-					return nil, errors.Convert(err)
-				}
-				results = append(results, githubRelease)
+			githubRelease, err := convertGitHubRelease(release, data.Options.ConnectionId, data.Options.GithubId)
+			if err != nil {
+				return nil, errors.Convert(err)
 			}
+			results = append(results, githubRelease)
 
 			return results, nil
 		},


(incubator-devlake) 10/19: fix: change jira issue component field to text type

Posted by kl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

klesh pushed a commit to branch kw-7852-components-field-length
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit 4eeca4d1fd08f3ff551dabbb55d3098170133e65
Author: Klesh Wong <zh...@merico.dev>
AuthorDate: Mon Aug 12 17:20:24 2024 +0800

    fix: change jira issue component field to text type
---
 backend/core/dal/dal.go                            |  2 ++
 backend/impls/dalgorm/dalgorm.go                   | 19 ++++++++++
 .../20240809_change_issue_component_type.go        | 40 ++++++++++++++++++++++
 .../jira/models/migrationscripts/register.go       |  1 +
 4 files changed, 62 insertions(+)

diff --git a/backend/core/dal/dal.go b/backend/core/dal/dal.go
index 48cc36010..d5f4fbfea 100644
--- a/backend/core/dal/dal.go
+++ b/backend/core/dal/dal.go
@@ -167,6 +167,8 @@ type Dal interface {
 	GetPrimaryKeyFields(t reflect.Type) []reflect.StructField
 	// RenameColumn renames column name for specified table
 	RenameColumn(table, oldColumnName, newColumnName string) errors.Error
+	// ModifyColumnType modifies column type
+	ModifyColumnType(table, columnName, columnType string) errors.Error
 	// DropIndexes drops all specified tables
 	DropIndexes(table string, indexes ...string) errors.Error
 	// Dialect returns the dialect of current database
diff --git a/backend/impls/dalgorm/dalgorm.go b/backend/impls/dalgorm/dalgorm.go
index ba3bcdb61..7812d94dc 100644
--- a/backend/impls/dalgorm/dalgorm.go
+++ b/backend/impls/dalgorm/dalgorm.go
@@ -372,6 +372,25 @@ func (d *Dalgorm) RenameColumn(table, oldColumnName, newColumnName string) error
 	)
 }
 
+// ModifyColumnType modify column type
+func (d *Dalgorm) ModifyColumnType(table, columnName, columnType string) errors.Error {
+	// work around the error `cached plan must not change result type` for postgres
+	// wrap in func(){} to make the linter happy
+	defer func() {
+		_ = d.Exec("SELECT * FROM ? LIMIT 1", clause.Table{Name: table})
+	}()
+	sql := "ALTER TABLE ? MODIFY COLUMN ? ?"
+	if d.db.Dialector.Name() == "postgres" {
+		sql = "ALTER TABLE ? ALTER COLUMN ? TYPE ?"
+	}
+	return d.Exec(
+		sql,
+		clause.Table{Name: table},
+		clause.Column{Name: columnName},
+		clause.Column{Name: columnType},
+	)
+}
+
 // AllTables returns all tables in the database
 func (d *Dalgorm) AllTables() ([]string, errors.Error) {
 	var tableSql string
diff --git a/backend/plugins/jira/models/migrationscripts/20240809_change_issue_component_type.go b/backend/plugins/jira/models/migrationscripts/20240809_change_issue_component_type.go
new file mode 100644
index 000000000..30329085c
--- /dev/null
+++ b/backend/plugins/jira/models/migrationscripts/20240809_change_issue_component_type.go
@@ -0,0 +1,40 @@
+/*
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+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.
+*/
+
+package migrationscripts
+
+import (
+	"github.com/apache/incubator-devlake/core/context"
+	"github.com/apache/incubator-devlake/core/errors"
+	"github.com/apache/incubator-devlake/core/plugin"
+)
+
+var _ plugin.MigrationScript = (*changeIssueComponentType)(nil)
+
+type changeIssueComponentType struct{}
+
+func (script *changeIssueComponentType) Up(basicRes context.BasicRes) errors.Error {
+	return basicRes.GetDal().ModifyColumnType("_tool_jira_issues", "components", "text")
+}
+
+func (*changeIssueComponentType) Version() uint64 {
+	return 20240809165545
+}
+
+func (*changeIssueComponentType) Name() string {
+	return "change jira_issue.components type to text"
+}
diff --git a/backend/plugins/jira/models/migrationscripts/register.go b/backend/plugins/jira/models/migrationscripts/register.go
index f2764ef42..6b7b89f84 100644
--- a/backend/plugins/jira/models/migrationscripts/register.go
+++ b/backend/plugins/jira/models/migrationscripts/register.go
@@ -51,5 +51,6 @@ func All() []plugin.MigrationScript {
 		new(addSubtaskToIssue),
 		new(addTmpAccountIdToJiraIssueChangelogItem),
 		new(addIssueFieldTable),
+		new(changeIssueComponentType),
 	}
 }