diff --git a/_includes/integrations/shared-setup/data-selection/data-selection-tabs.html b/_includes/integrations/shared-setup/data-selection/data-selection-tabs.html index f6700b5ee..d055228b5 100644 --- a/_includes/integrations/shared-setup/data-selection/data-selection-tabs.html +++ b/_includes/integrations/shared-setup/data-selection/data-selection-tabs.html @@ -72,9 +72,9 @@ {% capture selection-options %} For {{ integration.display_name }} integrations, you can select: -1. **Individual {{ object }}s {% if integration.column-selection == true %} and {{ col }}s{% endif %}** +1. **Individual {{ object }}s{% if integration.column-selection == true %} and {{ col }}s{% endif %}** {% if select-all == true %} -2. **All {{ object }}s and {{ col }}s** {% if integration.collection == "database-integrations" and view-selection == true %}(except views){% endif %} +2. **All {{ object }}s{% if integration.column-selection == true %} and {{ col }}s{% endif %}** {% if integration.collection == "database-integrations" and view-selection == true %}(except views){% endif %} {% endif %} {% if view-selection == true %} diff --git a/_saas-integrations/gitlab/gitlab-latest.md b/_saas-integrations/gitlab/gitlab-latest.md index 53e080ec3..97ca93aaf 100755 --- a/_saas-integrations/gitlab/gitlab-latest.md +++ b/_saas-integrations/gitlab/gitlab-latest.md @@ -38,11 +38,8 @@ api-type: "platform.gitlab" anchor-scheduling: true cron-scheduling: true -table-selection: false -column-selection: false -select-all: false -select-all-reason: | - As this integration doesn't support table or column selection, all available tables and columns are automatically replicated. +table-selection: true +column-selection: true extraction-logs: true loading-reports: true @@ -100,6 +97,11 @@ setup-steps: content: | {% include integrations/shared-setup/replication-frequency.html %} + - title: "Set objects to replicate" + anchor: "setting-data-to-replicate" + content: | + {% include integrations/shared-setup/data-selection/object-selection.html %} + # -------------------------- # # Table Schemas # diff --git a/archive/_integration-schemas/gitlab/branches.md b/archive/_integration-schemas/gitlab/branches.md index 403b939b6..0580c68e8 100644 --- a/archive/_integration-schemas/gitlab/branches.md +++ b/archive/_integration-schemas/gitlab/branches.md @@ -3,7 +3,7 @@ tap: "gitlab" version: "1" name: "branches" -doc-link: https://gitlab.com/help/api/branches.html +doc-link: https://docs.gitlab.com/ee/api/branches.html singer-schema: https://github.com/singer-io/tap-gitlab/blob/master/tap_gitlab/schemas/branches.json description: | The `{{ table.name }}` table contains high-level info about repository branches in your projects. @@ -16,7 +16,7 @@ replication-key: api-method: name: "listRepositoryBranches" - doc-link: https://gitlab.com/help/api/branches.html#list-repository-branches + doc-link: https://docs.gitlab.com/ee/api/branches.html#list-repository-branches attributes: - name: "project_id" diff --git a/archive/_integration-schemas/gitlab/commits.md b/archive/_integration-schemas/gitlab/commits.md index 34e9d5416..345b07fa4 100644 --- a/archive/_integration-schemas/gitlab/commits.md +++ b/archive/_integration-schemas/gitlab/commits.md @@ -3,7 +3,7 @@ tap: "gitlab" version: "1" name: "commits" -doc-link: https://gitlab.com/help/api/commits.md +doc-link: https://docs.gitlab.com/ee/api/commits.html singer-schema: https://github.com/singer-io/tap-gitlab/blob/master/tap_gitlab/schemas/commits.json description: | The `{{ table.name }}` table contains info about repository commits in a project. @@ -16,7 +16,7 @@ replication-key: api-method: name: "listRepositoryCommits" - doc-link: https://gitlab.com/help/api/commits.md#list-repository-commits + doc-link: https://docs.gitlab.com/ee/api/commits.html#list-repository-commits attributes: - name: "id" diff --git a/archive/_integration-schemas/gitlab/group_milestones.json b/archive/_integration-schemas/gitlab/group_milestones.json new file mode 100644 index 000000000..f74833fb1 --- /dev/null +++ b/archive/_integration-schemas/gitlab/group_milestones.json @@ -0,0 +1,87 @@ +{ + "type": "object", + "properties": { + "id": { + "type": [ + "null", + "integer" + ] + }, + "iid": { + "type": [ + "null", + "integer" + ] + }, + "group_id": { + "type": [ + "null", + "integer" + ] + }, + "title": { + "type": [ + "null", + "string" + ] + }, + "description": { + "type": [ + "null", + "string" + ] + }, + "state": { + "type": [ + "null", + "string" + ] + }, + "created_at": { + "type": [ + "null", + "string" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "null", + "string" + ], + "format": "date-time" + }, + "start_date": { + "type": [ + "null", + "string" + ], + "format": "date-time" + }, + "due_date": { + "type": [ + "null", + "string" + ], + "format": "date-time" + }, + "expired": { + "type": [ + "null", + "boolean" + ] + }, + "web_url": { + "type": [ + "null", + "string" + ] + } + }, + "required": [ + "id", + "iid", + "title", + "state" + ] +} diff --git a/archive/_integration-schemas/gitlab/group_milestones.md b/archive/_integration-schemas/gitlab/group_milestones.md new file mode 100644 index 000000000..6d5d914b2 --- /dev/null +++ b/archive/_integration-schemas/gitlab/group_milestones.md @@ -0,0 +1,71 @@ +--- +tap: "gitlab" +version: "1" + +name: "group_milestones" +doc-link: https://docs.gitlab.com/ee/api/milestones.html#group-level-mr-approvals +singer-schema: https://github.com/singer-io/tap-gitlab/blob/master/tap_gitlab/schemas/group_milestones.json +description: | + The `{{ table.name }}` table contains info about group-level milestones. + + **Note**: To replicate group milestone data, you must set this table and the [`groups`](#groups) table to replicate. Data for this table will only be replicated when the associated group (in the [`groups`](#groups) table) is also updated. + +replication-method: "Key-based Incremental" + +api-method: + name: "listGroupMilestones" + doc-link: https://docs.gitlab.com/ee/api/milestones.html#list-all-group-milestones + +attributes: + - name: "id" + type: "integer" + primary-key: true + description: "The milestone ID." + foreign-key-id: "milestone-id" + + - name: "iid" + type: "integer" + primary-key: true + description: "The milestone internal ID." + + - name: "group_id" + type: "integer" + description: "The ID of the group associated with the milestone." + foreign-key-id: "group-id" + + - name: "title" + type: "string" + description: "The milestone title." + + - name: "description" + type: "string" + description: "The milestone description." + + - name: "state" + type: "string" + description: "The milestone state. Ex: `active` or `closed`" + + - name: "created_at" + type: "date-time" + description: "The time the milestone was created." + + - name: "updated_at" + type: "date-time" + description: "The time the milestone was last updated." + + - name: "start_date" + type: "date-time" + description: "The milestone start date." + + - name: "due_date" + type: "date-time" + description: "The milestone due date." + + - name: "expired" + type: "boolean" + description: "Indicates if the milestone has expired." + + - name: "web_url" + type: "string" + description: "The URL of the milestone." +--- diff --git a/archive/_integration-schemas/gitlab/issues.md b/archive/_integration-schemas/gitlab/issues.md index 32d8cf9aa..71b92f659 100644 --- a/archive/_integration-schemas/gitlab/issues.md +++ b/archive/_integration-schemas/gitlab/issues.md @@ -3,7 +3,7 @@ tap: "gitlab" version: "1" name: "issues" -doc-link: https://gitlab.com/help/api/issues.md#list-project-issues +doc-link: https://docs.gitlab.com/ee/api/issues.html#list-project-issues singer-schema: https://github.com/singer-io/tap-gitlab/blob/master/tap_gitlab/schemas/issues.json description: | The `{{ table.name }}` table contains info about issues contained within projects. @@ -11,7 +11,7 @@ description: | replication-method: "Key-based Incremental" api-method: name: "listProjectIssues" - doc-link: https://gitlab.com/help/api/issues.md#list-project-issues + doc-link: https://docs.gitlab.com/ee/api/issues.html#list-project-issues attributes: - name: "id" diff --git a/archive/_integration-schemas/gitlab/milestones.md b/archive/_integration-schemas/gitlab/milestones.md deleted file mode 100644 index 6ce0d89a5..000000000 --- a/archive/_integration-schemas/gitlab/milestones.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -tap: "gitlab" -version: "1" - -name: "milestones" -doc-link: https://gitlab.com/help/api/milestones.md#list-project-milestones -singer-schema: https://github.com/singer-io/tap-gitlab/blob/master/tap_gitlab/schemas/milestones.json -description: | - The `{{ table.name }}` table contains info about project milestones. - - **Note**: To replicate milestone data, you must set this table and the [`projects`](#projects) table to replicate. Data for this table will only be replicated when the associated project (in the [`projects`](#projects) table) is also updated. - -replication-method: "Key-based Incremental" -api-method: - name: "listProjectMilestones" - doc-link: https://gitlab.com/help/api/milestones.md#list-project-milestones - -attributes: - - name: "id" - type: "integer" - primary-key: true - description: "The milestone ID." - foreign-key-id: "milestone-id" - - - name: "updated_at" - type: "date-time" - replication-key: true - description: "The time the milestone was last updated." - - - name: "iid" - type: "integer" - description: "The IID of the milestone." - - - name: "project_id" - type: "integer" - description: "The ID of the project the milestone is associated with." - foreign-key-id: "project-id" - - - name: "title" - type: "string" - description: "The title of the milestone." - - - name: "description" - type: "string" - description: "The description of the milestone." - - - name: "due_date" - type: "string" - description: "The date the milestone is due by." - - - name: "start_date" - type: "string" - description: "The start date of the milestone." - - - name: "state" - type: "string" - description: "The state of the milestone. Possible values are `active` and `closed`." - - - name: "created_at" - type: "date-time" - description: "The time the milestone was created." ---- \ No newline at end of file diff --git a/_data/taps/schemas/gitlab/v1/json/milestones.json b/archive/_integration-schemas/gitlab/project_milestones.json similarity index 76% rename from _data/taps/schemas/gitlab/v1/json/milestones.json rename to archive/_integration-schemas/gitlab/project_milestones.json index af15b6b6f..e0fe57365 100644 --- a/_data/taps/schemas/gitlab/v1/json/milestones.json +++ b/archive/_integration-schemas/gitlab/project_milestones.json @@ -1,42 +1,40 @@ { + "type": "object", "properties": { - "created_at": { - "type": "date-time" - }, - "description": { + "id": { "type": [ "null", - "string" + "integer" ] }, - "due_date": { + "iid": { "type": [ "null", - "string" + "integer" ] }, - "group_id": { + "project_id": { "type": [ "null", "integer" ] }, - "id": { + "title": { "type": [ "null", - "integer" + "string" ] }, - "iid": { + "description": { "type": [ "null", - "integer" + "string" ] }, - "project_id": { + "due_date": { "type": [ "null", - "integer" + "string" ] }, "start_date": { @@ -51,15 +49,25 @@ "string" ] }, - "title": { + "updated_at": { "type": [ "null", "string" - ] + ], + "format": "date-time" }, - "updated_at": { - "type": "date-time" + "created_at": { + "type": [ + "null", + "string" + ], + "format": "date-time" + }, + "expired": { + "type": [ + "null", + "boolean" + ] } - }, - "type": "object" -} \ No newline at end of file + } +} diff --git a/archive/_integration-schemas/gitlab/project_milestones.md b/archive/_integration-schemas/gitlab/project_milestones.md new file mode 100644 index 000000000..3394304af --- /dev/null +++ b/archive/_integration-schemas/gitlab/project_milestones.md @@ -0,0 +1,69 @@ +--- +tap: "gitlab" +version: "1" + +name: "project_milestones" +doc-link: https://docs.gitlab.com/ee/api/milestones.html#list-project-milestones +singer-schema: https://github.com/singer-io/tap-gitlab/blob/master/tap_gitlab/schemas/project_milestones.json +description: | + The `{{ table.name }}` table contains info about project-level milestones. + + **Note**: To replicate project milestone data, you must set this table and the [`projects`](#projects) table to replicate. Data for this table will only be replicated when the associated project (in the [`projects`](#projects) table) is also updated. + +replication-method: "Key-based Incremental" +replication-key: + name: "projects.last_activity_at" + +api-method: + name: "listProjectMilestones" + doc-link: https://docs.gitlab.com/ee/api/milestones.html#list-project-milestones + +attributes: + - name: "id" + type: "integer" + primary-key: true + description: "The milestone ID." + foreign-key-id: "milestone-id" + + - name: "iid" + type: "integer" + primary-key: true + description: "The milestone internal ID." + + - name: "project_id" + type: "integer" + description: "The ID of the project associated with the milestone." + foreign-key-id: "project-id" + + - name: "title" + type: "string" + description: "The milestone title." + + - name: "description" + type: "string" + description: "The milestone description." + + - name: "due_date" + type: "date-time" + description: "The milestone due date." + + - name: "start_date" + type: "date-time" + description: "The milestone start date." + + - name: "state" + type: "string" + description: "The milestone state. Ex: `active` or `closed`" + + - name: "updated_at" + type: "date-time" + description: "The time the milestone was last updated." + + - name: "created_at" + type: "date-time" + description: "The time the milestone was created." + + - name: "expired" + type: "boolean" + description: "Indicates if the milestone has expired." +--- diff --git a/archive/_integration-schemas/gitlab/projects.md b/archive/_integration-schemas/gitlab/projects.md index 5ee4f0038..04d9c0acd 100644 --- a/archive/_integration-schemas/gitlab/projects.md +++ b/archive/_integration-schemas/gitlab/projects.md @@ -3,7 +3,7 @@ tap: "gitlab" version: "1" name: "projects" -doc-link: https://gitlab.com/help/api/projects.md#list-all-projects +doc-link: https://docs.gitlab.com/ee/api/projects.html#list-all-projects singer-schema: https://github.com/singer-io/tap-gitlab/blob/master/tap_gitlab/schemas/projects.json description: | The `{{ table.name }}` table contains info about specific projects. @@ -11,7 +11,7 @@ description: | replication-method: "Key-based Incremental" api-method: name: "listAllProjects" - doc-link: https://gitlab.com/help/api/projects.md#list-all-projects + doc-link: https://docs.gitlab.com/ee/api/projects.html#list-all-projects attributes: - name: "id" diff --git a/archive/_integration-schemas/gitlab/users.md b/archive/_integration-schemas/gitlab/users.md index 71c109d62..cd74ef750 100644 --- a/archive/_integration-schemas/gitlab/users.md +++ b/archive/_integration-schemas/gitlab/users.md @@ -3,7 +3,7 @@ tap: "gitlab" version: "1" name: "users" -doc-link: https://gitlab.com/help/api/users.md#list-users +doc-link: https://docs.gitlab.com/ee/api/users.html#list-users singer-schema: https://github.com/singer-io/tap-gitlab/blob/master/tap_gitlab/schemas/users.json description: | The `{{ table.name }}` table contains info about the users in your {{ integration.display_name }} account. @@ -11,7 +11,7 @@ description: | replication-method: "Full Table" api-method: name: "listUsers" - doc-link: https://gitlab.com/help/api/users.md#list-users + doc-link: https://docs.gitlab.com/ee/api/users.html#list-users attributes: - name: "id"