Merge pull request #9991 from appwrite/feat-ref-param-to-vcs-list-contents

Add ref param to vcs list contents
This commit is contained in:
Matej Bačo 2025-06-13 12:49:47 +02:00 committed by GitHub
commit 4704f6f0b0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 136 additions and 31 deletions

View file

@ -4490,6 +4490,29 @@
}
],
"description": "Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console."
},
{
"name": "createDocuments",
"auth": {
"Key": []
},
"parameters": [
"databaseId",
"collectionId",
"documents"
],
"required": [
"databaseId",
"collectionId",
"documents"
],
"responses": [
{
"code": 201,
"model": "#\/components\/schemas\/documentList"
}
],
"description": "Create new Documents. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console."
}
],
"auth": {
@ -6595,7 +6618,8 @@
"png",
"webp",
"heic",
"avif"
"avif",
"gif"
],
"x-enum-name": "ImageFormat",
"x-enum-keys": [],

View file

@ -9767,6 +9767,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -9792,7 +9793,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -10395,6 +10397,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -10420,7 +10423,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -25957,6 +25961,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -25982,7 +25987,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -26601,6 +26607,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -26626,7 +26633,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -29385,7 +29393,8 @@
"png",
"webp",
"heic",
"avif"
"avif",
"gif"
],
"x-enum-name": "ImageFormat",
"x-enum-keys": [],
@ -34867,6 +34876,17 @@
"default": ""
},
"in": "query"
},
{
"name": "providerReference",
"description": "Git reference (branch, tag, commit) to get contents from",
"required": false,
"schema": {
"type": "string",
"x-example": "<PROVIDER_REFERENCE>",
"default": ""
},
"in": "query"
}
]
}

View file

@ -8844,6 +8844,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -8869,7 +8870,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -9244,6 +9246,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -9269,7 +9272,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -17490,6 +17494,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -17515,7 +17520,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -17906,6 +17912,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -17931,7 +17938,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -20646,7 +20654,8 @@
"png",
"webp",
"heic",
"avif"
"avif",
"gif"
],
"x-enum-name": "ImageFormat",
"x-enum-keys": [],

View file

@ -4636,6 +4636,29 @@
}
],
"description": "Create a new Document. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console."
},
{
"name": "createDocuments",
"auth": {
"Key": []
},
"parameters": [
"databaseId",
"collectionId",
"documents"
],
"required": [
"databaseId",
"collectionId",
"documents"
],
"responses": [
{
"code": 201,
"model": "#\/definitions\/documentList"
}
],
"description": "Create new Documents. Before using this route, you should create a new collection resource using either a [server integration](https:\/\/appwrite.io\/docs\/server\/databases#databasesCreateCollection) API or directly from your database console."
}
],
"auth": {
@ -6729,7 +6752,8 @@
"png",
"webp",
"heic",
"avif"
"avif",
"gif"
],
"x-enum-name": "ImageFormat",
"x-enum-keys": [],

View file

@ -9835,6 +9835,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -9860,7 +9861,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -10466,6 +10468,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -10491,7 +10494,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -26226,6 +26230,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -26251,7 +26256,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -26873,6 +26879,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -26898,7 +26905,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -29627,7 +29635,8 @@
"png",
"webp",
"heic",
"avif"
"avif",
"gif"
],
"x-enum-name": "ImageFormat",
"x-enum-keys": [],
@ -35086,6 +35095,15 @@
"x-example": "<PROVIDER_ROOT_DIRECTORY>",
"default": "",
"in": "query"
},
{
"name": "providerReference",
"description": "Git reference (branch, tag, commit) to get contents from",
"required": false,
"type": "string",
"x-example": "<PROVIDER_REFERENCE>",
"default": "",
"in": "query"
}
]
}

View file

@ -8927,6 +8927,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -8952,7 +8953,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -9340,6 +9342,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -9365,7 +9368,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -17792,6 +17796,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -17817,7 +17822,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -18221,6 +18227,7 @@
"dart-3.1",
"dart-3.3",
"dart-3.5",
"dart-3.8",
"dotnet-6.0",
"dotnet-7.0",
"dotnet-8.0",
@ -18246,7 +18253,8 @@
"static-1",
"flutter-3.24",
"flutter-3.27",
"flutter-3.29"
"flutter-3.29",
"flutter-3.32"
],
"x-enum-name": null,
"x-enum-keys": []
@ -20935,7 +20943,8 @@
"png",
"webp",
"heic",
"avif"
"avif",
"gif"
],
"x-enum-name": "ImageFormat",
"x-enum-keys": [],

View file

@ -605,11 +605,12 @@ App::get('/v1/vcs/github/installations/:installationId/providerRepositories/:pro
->param('installationId', '', new Text(256), 'Installation Id')
->param('providerRepositoryId', '', new Text(256), 'Repository Id')
->param('providerRootDirectory', '', new Text(256, 0), 'Path to get contents of nested directory', true)
->param('providerReference', '', new Text(256, 0), 'Git reference (branch, tag, commit) to get contents from', true)
->inject('gitHub')
->inject('response')
->inject('project')
->inject('dbForPlatform')
->action(function (string $installationId, string $providerRepositoryId, string $providerRootDirectory, GitHub $github, Response $response, Document $project, Database $dbForPlatform) {
->action(function (string $installationId, string $providerRepositoryId, string $providerRootDirectory, string $providerReference, GitHub $github, Response $response, Document $project, Database $dbForPlatform) {
$installation = $dbForPlatform->getDocument('installations', $installationId);
if ($installation->isEmpty()) {
@ -631,7 +632,7 @@ App::get('/v1/vcs/github/installations/:installationId/providerRepositories/:pro
throw new Exception(Exception::PROVIDER_REPOSITORY_NOT_FOUND);
}
$contents = $github->listRepositoryContents($owner, $repositoryName, $providerRootDirectory);
$contents = $github->listRepositoryContents($owner, $repositoryName, $providerRootDirectory, $providerReference);
$vcsContents = [];
foreach ($contents as $content) {

12
composer.lock generated
View file

@ -4584,16 +4584,16 @@
},
{
"name": "utopia-php/vcs",
"version": "0.10.4",
"version": "0.10.5",
"source": {
"type": "git",
"url": "https://github.com/utopia-php/vcs.git",
"reference": "f635b368909eb3c3fe57344fe43525e74e8fdc03"
"reference": "b358439dc387f6097019eb83ebb9fc258fe9da05"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/utopia-php/vcs/zipball/f635b368909eb3c3fe57344fe43525e74e8fdc03",
"reference": "f635b368909eb3c3fe57344fe43525e74e8fdc03",
"url": "https://api.github.com/repos/utopia-php/vcs/zipball/b358439dc387f6097019eb83ebb9fc258fe9da05",
"reference": "b358439dc387f6097019eb83ebb9fc258fe9da05",
"shasum": ""
},
"require": {
@ -4627,9 +4627,9 @@
],
"support": {
"issues": "https://github.com/utopia-php/vcs/issues",
"source": "https://github.com/utopia-php/vcs/tree/0.10.4"
"source": "https://github.com/utopia-php/vcs/tree/0.10.5"
},
"time": "2025-06-02T09:18:36+00:00"
"time": "2025-06-10T15:01:16+00:00"
},
{
"name": "utopia-php/websocket",

View file

@ -213,7 +213,7 @@ services:
appwrite-console:
<<: *x-logging
container_name: appwrite-console
image: appwrite/console:6.0.32
image: appwrite/console:6.0.41
restart: unless-stopped
networks:
- appwrite