working openapi-generator

This commit is contained in:
Kasper Juul Hermansen 2022-11-24 23:20:43 +01:00
parent 1a3084e651
commit 71076a6c21
Signed by: kjuulh
GPG Key ID: 57B6E1465221F912
11 changed files with 426 additions and 0 deletions

View File

@ -0,0 +1,8 @@
[package]
name = "gitea_raw_client"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]

View File

@ -0,0 +1,5 @@
FROM openapitools/openapi-generator-cli
WORKDIR /src/app
COPY scripts/generate_client.entrypoint.sh .

View File

@ -0,0 +1,25 @@
version: "3"
services:
gitea:
image: "gitea/gitea:1.17.3"
environment:
ROOT_URL: "http://gitea:3000"
INSTALL_LOCK: "true"
healthcheck:
test: curl --fail http://localhost:3000 || exit 1
interval: 5s
retries: 5
start_period: 5s
timeout: 10s
generator:
build:
dockerfile: scripts/generate_client.Dockerfile
context: ../
command: "generate -i http://gitea:3000/swagger.v1.json -g rust -o /mnt/generated/"
volumes:
- "../:/mnt/generated/"
depends_on:
gitea:
condition: service_healthy

View File

@ -0,0 +1,2 @@
target/
git/

View File

@ -0,0 +1,15 @@
#!/bin/bash
set -e
echo "waiting for gitea..."
curl --silent --head --retry 5 --retry-connrefused --retry-delay 0 --max-time 10 --retry-max-time 40 "http://gitea:3000/" > /dev/null
echo "fetching swagger spec"
curl -L http://gitea:3000/swagger.v1.json > gitea.swagger.json
echo "fetched gitea.swagger.json"
exit 0

View File

@ -0,0 +1,7 @@
#!/bin/bash
set -e
docker compose -f scripts/generate_client.docker-compose.yml build
docker compose -f scripts/generate_client.docker-compose.yml up generator
docker compose -f scripts/generate_client.docker-compose.yml down

View File

@ -0,0 +1,3 @@
/target/
**/*.rs.bk
Cargo.lock

View File

@ -0,0 +1,23 @@
# OpenAPI Generator Ignore
# Generated by openapi-generator https://github.com/openapitools/openapi-generator
# Use this file to prevent files from being overwritten by the generator.
# The patterns follow closely to .gitignore or .dockerignore.
# As an example, the C# client generator defines ApiClient.cs.
# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line:
#ApiClient.cs
# You can match any string of characters against a directory, file or extension with a single asterisk (*):
#foo/*/qux
# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux
# You can recursively match patterns against a directory, file or extension with a double asterisk (**):
#foo/**/qux
# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux
# You can also negate patterns with an exclamation (!).
# For example, you can ignore all files in a docs folder with the file extension .md:
#docs/*.md
# Then explicitly reverse the ignore rule for a single file:
#!docs/README.md

View File

@ -0,0 +1,336 @@
.gitignore
.openapi-generator-ignore
.travis.yml
Cargo.toml
README.md
docs/AccessToken.md
docs/AddCollaboratorOption.md
docs/AddTimeOption.md
docs/AdminApi.md
docs/AnnotatedTag.md
docs/AnnotatedTagObject.md
docs/ApiError.md
docs/Attachment.md
docs/Branch.md
docs/BranchProtection.md
docs/CombinedStatus.md
docs/Comment.md
docs/Commit.md
docs/CommitAffectedFiles.md
docs/CommitDateOptions.md
docs/CommitMeta.md
docs/CommitStats.md
docs/CommitStatus.md
docs/CommitUser.md
docs/ContentsResponse.md
docs/CreateAccessTokenOption.md
docs/CreateBranchProtectionOption.md
docs/CreateBranchRepoOption.md
docs/CreateEmailOption.md
docs/CreateFileOptions.md
docs/CreateForkOption.md
docs/CreateGpgKeyOption.md
docs/CreateHookOption.md
docs/CreateIssueCommentOption.md
docs/CreateIssueOption.md
docs/CreateKeyOption.md
docs/CreateLabelOption.md
docs/CreateMilestoneOption.md
docs/CreateOAuth2ApplicationOptions.md
docs/CreateOrgOption.md
docs/CreatePullRequestOption.md
docs/CreatePullReviewComment.md
docs/CreatePullReviewOptions.md
docs/CreateReleaseOption.md
docs/CreateRepoOption.md
docs/CreateStatusOption.md
docs/CreateTagOption.md
docs/CreateTeamOption.md
docs/CreateUserOption.md
docs/CreateWikiPageOptions.md
docs/Cron.md
docs/DeleteEmailOption.md
docs/DeleteFileOptions.md
docs/DeployKey.md
docs/DismissPullReviewOptions.md
docs/EditAttachmentOptions.md
docs/EditBranchProtectionOption.md
docs/EditDeadlineOption.md
docs/EditGitHookOption.md
docs/EditHookOption.md
docs/EditIssueCommentOption.md
docs/EditIssueOption.md
docs/EditLabelOption.md
docs/EditMilestoneOption.md
docs/EditOrgOption.md
docs/EditPullRequestOption.md
docs/EditReactionOption.md
docs/EditReleaseOption.md
docs/EditRepoOption.md
docs/EditTeamOption.md
docs/EditUserOption.md
docs/Email.md
docs/ExternalTracker.md
docs/ExternalWiki.md
docs/FileCommitResponse.md
docs/FileDeleteResponse.md
docs/FileLinksResponse.md
docs/FileResponse.md
docs/GeneralApiSettings.md
docs/GeneralAttachmentSettings.md
docs/GeneralRepoSettings.md
docs/GeneralUiSettings.md
docs/GenerateRepoOption.md
docs/GitBlobResponse.md
docs/GitEntry.md
docs/GitHook.md
docs/GitObject.md
docs/GitTreeResponse.md
docs/GpgKey.md
docs/GpgKeyEmail.md
docs/Hook.md
docs/Identity.md
docs/InternalTracker.md
docs/Issue.md
docs/IssueApi.md
docs/IssueDeadline.md
docs/IssueLabelsOption.md
docs/IssueTemplate.md
docs/Label.md
docs/MarkdownOption.md
docs/MergePullRequestOption.md
docs/MigrateRepoForm.md
docs/MigrateRepoOptions.md
docs/Milestone.md
docs/MiscellaneousApi.md
docs/NodeInfo.md
docs/NodeInfoServices.md
docs/NodeInfoSoftware.md
docs/NodeInfoUsage.md
docs/NodeInfoUsageUsers.md
docs/Note.md
docs/NotificationApi.md
docs/NotificationCount.md
docs/NotificationSubject.md
docs/NotificationThread.md
docs/OAuth2Application.md
docs/Organization.md
docs/OrganizationApi.md
docs/OrganizationPermissions.md
docs/Package.md
docs/PackageApi.md
docs/PackageFile.md
docs/PayloadCommit.md
docs/PayloadCommitVerification.md
docs/PayloadUser.md
docs/Permission.md
docs/PrBranchInfo.md
docs/PublicKey.md
docs/PullRequest.md
docs/PullRequestMeta.md
docs/PullReview.md
docs/PullReviewComment.md
docs/PullReviewRequestOptions.md
docs/Reaction.md
docs/Reference.md
docs/Release.md
docs/RepoCollaboratorPermission.md
docs/RepoCommit.md
docs/RepoTopicOptions.md
docs/RepoTransfer.md
docs/Repository.md
docs/RepositoryApi.md
docs/RepositoryMeta.md
docs/SearchResults.md
docs/ServerVersion.md
docs/SettingsApi.md
docs/StopWatch.md
docs/SubmitPullReviewOptions.md
docs/Tag.md
docs/Team.md
docs/TeamSearch200Response.md
docs/TimelineComment.md
docs/TopicName.md
docs/TopicResponse.md
docs/TrackedTime.md
docs/TransferRepoOption.md
docs/UpdateFileOptions.md
docs/User.md
docs/UserApi.md
docs/UserHeatmapData.md
docs/UserSearch200Response.md
docs/UserSettings.md
docs/UserSettingsOptions.md
docs/WatchInfo.md
docs/WikiCommit.md
docs/WikiCommitList.md
docs/WikiPage.md
docs/WikiPageMetaData.md
git_push.sh
src/apis/admin_api.rs
src/apis/configuration.rs
src/apis/issue_api.rs
src/apis/miscellaneous_api.rs
src/apis/mod.rs
src/apis/notification_api.rs
src/apis/organization_api.rs
src/apis/package_api.rs
src/apis/repository_api.rs
src/apis/settings_api.rs
src/apis/user_api.rs
src/lib.rs
src/models/access_token.rs
src/models/add_collaborator_option.rs
src/models/add_time_option.rs
src/models/annotated_tag.rs
src/models/annotated_tag_object.rs
src/models/api_error.rs
src/models/attachment.rs
src/models/branch.rs
src/models/branch_protection.rs
src/models/combined_status.rs
src/models/comment.rs
src/models/commit.rs
src/models/commit_affected_files.rs
src/models/commit_date_options.rs
src/models/commit_meta.rs
src/models/commit_stats.rs
src/models/commit_status.rs
src/models/commit_user.rs
src/models/contents_response.rs
src/models/create_access_token_option.rs
src/models/create_branch_protection_option.rs
src/models/create_branch_repo_option.rs
src/models/create_email_option.rs
src/models/create_file_options.rs
src/models/create_fork_option.rs
src/models/create_gpg_key_option.rs
src/models/create_hook_option.rs
src/models/create_issue_comment_option.rs
src/models/create_issue_option.rs
src/models/create_key_option.rs
src/models/create_label_option.rs
src/models/create_milestone_option.rs
src/models/create_o_auth2_application_options.rs
src/models/create_org_option.rs
src/models/create_pull_request_option.rs
src/models/create_pull_review_comment.rs
src/models/create_pull_review_options.rs
src/models/create_release_option.rs
src/models/create_repo_option.rs
src/models/create_status_option.rs
src/models/create_tag_option.rs
src/models/create_team_option.rs
src/models/create_user_option.rs
src/models/create_wiki_page_options.rs
src/models/cron.rs
src/models/delete_email_option.rs
src/models/delete_file_options.rs
src/models/deploy_key.rs
src/models/dismiss_pull_review_options.rs
src/models/edit_attachment_options.rs
src/models/edit_branch_protection_option.rs
src/models/edit_deadline_option.rs
src/models/edit_git_hook_option.rs
src/models/edit_hook_option.rs
src/models/edit_issue_comment_option.rs
src/models/edit_issue_option.rs
src/models/edit_label_option.rs
src/models/edit_milestone_option.rs
src/models/edit_org_option.rs
src/models/edit_pull_request_option.rs
src/models/edit_reaction_option.rs
src/models/edit_release_option.rs
src/models/edit_repo_option.rs
src/models/edit_team_option.rs
src/models/edit_user_option.rs
src/models/email.rs
src/models/external_tracker.rs
src/models/external_wiki.rs
src/models/file_commit_response.rs
src/models/file_delete_response.rs
src/models/file_links_response.rs
src/models/file_response.rs
src/models/general_api_settings.rs
src/models/general_attachment_settings.rs
src/models/general_repo_settings.rs
src/models/general_ui_settings.rs
src/models/generate_repo_option.rs
src/models/git_blob_response.rs
src/models/git_entry.rs
src/models/git_hook.rs
src/models/git_object.rs
src/models/git_tree_response.rs
src/models/gpg_key.rs
src/models/gpg_key_email.rs
src/models/hook.rs
src/models/identity.rs
src/models/internal_tracker.rs
src/models/issue.rs
src/models/issue_deadline.rs
src/models/issue_labels_option.rs
src/models/issue_template.rs
src/models/label.rs
src/models/markdown_option.rs
src/models/merge_pull_request_option.rs
src/models/migrate_repo_form.rs
src/models/migrate_repo_options.rs
src/models/milestone.rs
src/models/mod.rs
src/models/node_info.rs
src/models/node_info_services.rs
src/models/node_info_software.rs
src/models/node_info_usage.rs
src/models/node_info_usage_users.rs
src/models/note.rs
src/models/notification_count.rs
src/models/notification_subject.rs
src/models/notification_thread.rs
src/models/o_auth2_application.rs
src/models/organization.rs
src/models/organization_permissions.rs
src/models/package.rs
src/models/package_file.rs
src/models/payload_commit.rs
src/models/payload_commit_verification.rs
src/models/payload_user.rs
src/models/permission.rs
src/models/pr_branch_info.rs
src/models/public_key.rs
src/models/pull_request.rs
src/models/pull_request_meta.rs
src/models/pull_review.rs
src/models/pull_review_comment.rs
src/models/pull_review_request_options.rs
src/models/reaction.rs
src/models/reference.rs
src/models/release.rs
src/models/repo_collaborator_permission.rs
src/models/repo_commit.rs
src/models/repo_topic_options.rs
src/models/repo_transfer.rs
src/models/repository.rs
src/models/repository_meta.rs
src/models/search_results.rs
src/models/server_version.rs
src/models/stop_watch.rs
src/models/submit_pull_review_options.rs
src/models/tag.rs
src/models/team.rs
src/models/team_search_200_response.rs
src/models/timeline_comment.rs
src/models/topic_name.rs
src/models/topic_response.rs
src/models/tracked_time.rs
src/models/transfer_repo_option.rs
src/models/update_file_options.rs
src/models/user.rs
src/models/user_heatmap_data.rs
src/models/user_search_200_response.rs
src/models/user_settings.rs
src/models/user_settings_options.rs
src/models/watch_info.rs
src/models/wiki_commit.rs
src/models/wiki_commit_list.rs
src/models/wiki_page.rs
src/models/wiki_page_meta_data.rs

View File

@ -0,0 +1 @@
6.3.0-SNAPSHOT

View File

@ -0,0 +1 @@
language: rust