8
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

職務経歴書をGitLab Pages を使って公開してみた

Last updated at Posted at 2020-04-27

始めに

長期の休みとなり、まとまった時間が取れたので自分の2年間の振り返り、いざという時のために職務経歴書なるものを書いてみようと思った。フォーマットを調べてみると、PDF や Word といった形式が主流らしい。最初は、Wordで書いてPDFに変換しようと考えていたが、まがいなりにも私はエンジニアなので、Wordのレイアウトと格闘するなどの余計なコストは使わずに、Markdownでさくっと書いて構成管理をしたいと思った。そこで個人的に使用している GitLab で構成管理、特に隠す理由もないので GitLab Pages で公開することにした。

作業内容

実現したいことは以下の通り。

  • 職務経歴書(Markdown)を構成管理したい。
  • MasterにマージしたタイミングでPDFに変換しダウンロードできるようにしたい。
  • 別に隠す必要もないので GitLab Pages として公開する。

リポジトリ作成

特に名前に決まりはないが、英約にすると Curriculum Vitae ということだったので、curriculum-vitaeという名前にした。
以下、リポジトリのディレクトリ構成です。(GitBookのディレクトリ構成に倣っています)

curriculum-vitae
|- styles
|   |- pdf.css
|   |- website.css
|- gitlab-ci.yml
|- book.json
|- README.md
|- SUMMARY.md
  • styles: 公開サイトやPDFに適用するスタイルシート

  • .gitlab-ci.yml: GitLab CI/CD で実行されるスクリプトを定義

  • book.json: GitBookの設定ファイル

    以下、設定例です。

    book.json
    {
      "langeage": "ja",
      "title": "Curriculum Vitae",
      "styles": {
        "website": "styles/website.css",
        "pdf": "styles/pdf.css"
      },
      "plugins": ["theme-api", "-sharing"]
    }
    
  • README.md: 職務経歴書の本体

  • SUMMARY.md: 文章の構成

職務経歴書を書く

各々の経歴をご自由に記載してください。何を書くとかは決まってないですが、私はこの辺りを参考に書きました。

GitLab Pagesで公開する準備

.gitlab-ci.ymlを書く

GitLab CI/CD を使って、静的サイトのビルド -> 公開、MarkdownからPDFへの変換を行います。
以下のファイルをリポジトリのルートに配置する。

gitlab-ci.yml
image: node:10

cache:
  paths:
    - node_modules/

before_script:
  - apt-get update
  - apt-get install -y calibre xvfb fonts-ipafont-gothic fonts-ipafont-mincho
  - npm install -g gitbook-cli
  - gitbook fetch 3.2.3
  - gitbook install

test:
  stage: test
  script:
    - gitbook build . public
    - xvfb-run gitbook pdf
  only:
    - branches
  except:
    - master

pages:
  stage: deploy
  script:
    - gitbook build . public
    - xvfb-run gitbook pdf . curriculum-vitae.pdf
  artifacts:
    paths:
      - public
      - curriculum-vitae.pdf
    expire_in: 1 week
  only:
    - master

git pushする

無事成功すると、GitLab Pages として先ほど記載した職務経歴書が公開され、提出用の PDF が artifacts として出力されます。

image-20200427152223532.png

試しに、ダウンロードしてみる。

image001.png

zipで圧縮されているので、適当に解凍します。

image-20200427153753045.png

  • public;GitLab Pagesとして公開されている資産一式。
  • curriculum-vitae.pdf;Markdownで記述した職務経歴書をPDFに変換したもの。

GitLab Pagesは、特に設定を加えなければ、https://<ユーザ名>.gitlab.io/curriculum-vitaeで公開されます。
※ユーザー名に.が含まれていると証明書関係のエラーになりますがコンテンツ的には問題ないので大丈夫です。

終わりに

思い付きでやってみましたが、自分の経験・スキルを振り返るのはいい取り組みだなと思いました。半年に一回くらいの頻度でアップデートしたい。また、今回の仕組みに関してもまだまだ改善ポイントがありそうです。(特にGitBookの設定周り)

参考

8
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?