{"id":17865854,"url":"https://github.com/ttskch/markdown-pdf-googledrive-ci-sample","last_synced_at":"2026-04-19T02:03:27.710Z","repository":{"id":66183935,"uuid":"133208307","full_name":"ttskch/markdown-pdf-googledrive-ci-sample","owner":"ttskch","description":"A sample of converting Markdown to PDF and deploying to Google Drive with CircleCI 2.0","archived":false,"fork":false,"pushed_at":"2020-04-09T02:51:05.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-08T12:25:13.754Z","etag":null,"topics":["circleci","circleci2","deploy","google-drive","markdown","pdf"],"latest_commit_sha":null,"homepage":"https://blog.ttskch.com/markdown-pdf-circleci-googledrive-deploymen/","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ttskch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-13T05:24:56.000Z","updated_at":"2020-04-09T03:01:54.000Z","dependencies_parsed_at":"2023-07-15T07:17:48.277Z","dependency_job_id":null,"html_url":"https://github.com/ttskch/markdown-pdf-googledrive-ci-sample","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttskch%2Fmarkdown-pdf-googledrive-ci-sample","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttskch%2Fmarkdown-pdf-googledrive-ci-sample/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttskch%2Fmarkdown-pdf-googledrive-ci-sample/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ttskch%2Fmarkdown-pdf-googledrive-ci-sample/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ttskch","download_url":"https://codeload.github.com/ttskch/markdown-pdf-googledrive-ci-sample/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246899658,"owners_count":20851898,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["circleci","circleci2","deploy","google-drive","markdown","pdf"],"created_at":"2024-10-28T09:25:17.384Z","updated_at":"2026-04-19T02:03:27.681Z","avatar_url":"https://github.com/ttskch.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# markdown-pdf-googledrive-ci-sample\n\nA sample of converting Markdown to PDF and deploying to Google Drive with CircleCI 2.0\n\n## Mechanism\n\n* Converts Markdown to PDF with [markdown-pdf](https://github.com/alanshaw/markdown-pdf)\n* Deploys PDF to Google Drive with [gdrive](https://github.com/gdrive-org/gdrive)\n    * Uses [Service Account](https://github.com/gdrive-org/gdrive#service-account) feature to make CircleCI enable to deploy to Google Drive\n\n## Preparing\n\n### 1. Create a Service Account\n\n1. Go to [Google API Console](https://console.developers.google.com/)\n1. Create a new Service Account in some project\n1. Download the credential json file\n\n### 2. Register the credential of Service Account as an envvar on CircleCI\n\n1. Make the credential json \"one line\" and copy it\n1. Go to https://circleci.com/gh/{user}/{project}/edit#env-vars and add the copied credential as a new envvar named `GOOGLE_SERVICE_ACCOUNT_CREDENTIAL`\n![image](https://user-images.githubusercontent.com/4360663/39964939-575c488a-56ca-11e8-8448-3880a79d79d3.png)\n\n### 3. Allow the Service Account to access the target folder on Google Drive\n\n1. [Show](https://console.developers.google.com/iam-admin/serviceaccounts) the email address of the Service Account and copy it\n![image](https://user-images.githubusercontent.com/4360663/39964702-41c01c72-56c5-11e8-9bbd-d702e8359678.png)\n1. Share the target folder to the Service Account with \"edit\" access, and copy the folder id\n![image](https://user-images.githubusercontent.com/4360663/39964742-a897a7a2-56c6-11e8-9383-78a1097f6dde.png)\n1. Replace `{parent_folder_id_here}` of [.circleci/config.yml](.circleci/config.yml#L35) with the copied folder id\n\n## Result example\n\n![image](https://user-images.githubusercontent.com/4360663/39965064-ed33f52c-56cc-11e8-9674-2dea95dd1b33.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fttskch%2Fmarkdown-pdf-googledrive-ci-sample","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fttskch%2Fmarkdown-pdf-googledrive-ci-sample","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fttskch%2Fmarkdown-pdf-googledrive-ci-sample/lists"}