朝日ネット 技術者ブログ

朝日ネットのエンジニアによるリレーブログ。今、自分が一番気になるテーマで書きます。

CentOS移行プロジェクト

本ブログについて

朝日ネットのoshikawaです。これまで開発部のエンジニアがブログ記事を執筆していましたが、今年度は開発部だけではなく、インフラ、ネットワーク、サービス運用といった朝日ネットの技術部門全域に拡げてお送りします。

はじめに

当社クラウド基盤上にてCentOSで運用する約200ホストのサービスを足掛け1年ほどかけアップデートした話です。

続きを読む

Git のサブコマンドに学ぶシェルスクリプトの書き方

はじめに

開発部の tasaki です。

シェルスクリプトはプログラムとプログラムとを繋ぐ存在であり、UNIX や Linux を使う上で最も重要なスクリプト言語であると言えます。 curl, diff, git, rsync, ssh 等の外部コマンドが複数絡むスクリプトや、テキストストリーム処理を多用するスクリプトを書きたい場合はシェルスクリプトとして書くのが最も手軽です。

一方、シェルスクリプトは書き方の自由度が高くコードスタイルについての合意が取りにくい言語であり、移植性の高いものを書くのが難しい言語であります。 大抵の Linux には bash が入っているためそれ向けに書いてしまってもよいのですが、Docker の流行により bash が標準で入っていない Alpine Linux 環境が使われる機会が世間的にも増えているため、少なくともデプロイ先で動くスクリプトは bash に依存しない形で書いておきたいです。

ところで、Git の bisect, filter-branch, stash, submodule, subtree などの一部のサブコマンドはシェルスクリプトとして書かれています。 これはあらゆる環境で安定して動作するシェルスクリプトであると言え、これを参考にすれば移植性の高いシェルスクリプトを書けるのではないでしょうか? 今回は私が Git に含まれるシェルスクリプトを読んで得られた知見を Tips としてまとめていきます。

続きを読む

Bootstrap4エディタのpingendoでpdfのマニュアルをHTML化してみた-後編

watanabeです。前回の記事ではBootstrap4のエディタを用いて、pdfのマニュアルを見た目の印象をあまり変えないようにHTML化しましたが 今回は印刷時のレイアウトを元のマニュアルに近づけるためにどう調整したかを記録します。

また、HTML化してもマニュアルとしての操作性を落とさないようにするためのおすすめTipsも紹介します。

続きを読む

OpenAPI Specification 3.0 チートシート

はじめに

こんにちは。朝日ネットでWebアプリケーションの開発を行っている tommy です。

OpenAPI Specification は RESTful な API を記述するための仕様です1。2015年に Open API Initiative が発足し、それまで Swagger という名前で進められていたプロジェクトを引き継ぎました。 現在では実質上の世界標準といえます。

今回は、この OpenAPI を書いている時に、コピペして使える、逆引きの小さなサンプル集が欲しいと思ったので、書いていこうと思います2


  1. カタカナで オープンAPI というと、日本だと一般に公開されたAPIという意味にもなるので注意。

  2. Swagger 2.0 から OpenAPI 3.0 になったことで仕様がだいぶすっきりした上に、公式のドキュメント がわかりやすいため調べながら書くのもそれほど大変なわけではないです。

続きを読む