これを押してください:WordPressのCI / CDは見落とされており、MaciekPalmowskiでそれを変更する方法

公開: 2022-02-05

WMRのWordPressコミュニティポッドキャストであるPressThisへようこそ。 ここでは、ホストのDavid Vogelpohlがコミュニティのゲストと一緒に座り、WordPress開発者が直面している最大の問題について話します。 以下は、元の録音の転写です。

David Vogelpohl:みなさん、こんにちは。WMRのWordPressコミュニティポッドキャストであるPressThisへようこそ。 これはあなたのホスト、David Vogelpohlです。私はWPEngineでの私の役割を通じてWordPressコミュニティをサポートしています。毎週、このコミュニティの最高のものをプレスで聞いてもらうのが大好きです。Twitter@wpdavidvで私を見つけることができます。 、またはiTunes、iHeartRadio、Spotifyでこれを押すようにサブスクライブするか、wmr.fmで最新のエピソードをダウンロードできます。 このエピソードでは、CI / CDとWordPressである私が非常にエキサイティングだと思うものと、それがどのように見過ごされているか、そしてそれをどのように変えてその会話に参加できるかについて話します。 このトピックをよく知っている人。 buddy.worksからご参加ください。 MaciekPalmowskiがこれを押すことを歓迎します。 Maciek、ようこそ。

Maciek Palmowski:こんにちは、David。 ありがとう。 私たちに感謝します。

DV:ここにお越しいただきありがとうございます。 これは、ここ数年、プレス・ディスで数回取り上げたトピックです。 そしてもちろん、海氷の素晴らしい世界は常に変化しており、誰もが独自の視点を持っています。 そして、私はこの会話を本当に楽しみにしています。 魔法がカバーしようとしているのは、CICDがWordPressの世界で見過ごされがちな理由についての彼の考えの重要性です。 そしてもちろん、CICDとWordPressの実践を採用するためのいくつかの親しみやすいオークション。 今日ここで取り上げる良いものがたくさんあり、魔法に飛び込むのを楽しみにしています。 私はあなたにあなたがおそらくあなたのwordpress.orgプロフィールからそれを覚えているすべてのゲストに尋ねたのと同じ質問をするつもりです。 しかし、WordPressのバージョンストーリーを簡単に教えていただけますか?

MP:私はWordPressだからです。 PHP開発者は最初はWordPress開発者のLeiterです。 私のキャリアのある時点で、私は自分のCMSを開発していました。 つまり、ほとんどすべてのPHP開発者は、自分の人生のこの段階で独自のCMSを作成しています。 ある時点で、すべてを更新しなければならないことを維持するのは本当に難しいことに気づきました。すべてを機能させ続けるためには、すべてを一人で行う必要があります。 ですから、ある時点で、もっと大きなグループの人々、おそらく何かのインストーラーによって作成されたものを探すのは良いことかもしれないことに気づきました。 いくつかのテストの後、私はWordPressを見つけました。 それ以来、私はWordPressを使用しているので、もう10年以上になります。

DV:ご存知のとおり、私はこのような奇妙なインタビューを230回行ったことがあると思います。正確な起源の話を誰かが持っているかどうかはわかりませんが、私は多くのことをよく知っています。私のチームや代理店時代を含め、WordPress CMSベースのビジネスとして始めたのではなく、独自のカスタムビジネスを採用し、その後WordPressやケーキやLaravelなどを採用した人々。 だから私はそう思いますが、それは本当に面白いです。 WordPressを発見したのは何年ですか?

MP:ああ、それはとても昔のことです。 私は46年以上勉強を始めたのだと思いますので、本当に長い時間でした。 前。 あなたが確かに私たちより賢く言ったように。

DV:わかりました。 うん。 カスタム投稿の種類とフィールドが入力された、またはコアの一部であった2010年は、知らないうちに完全に機能するCMSのように、大幅な変更を加えた重要な瞬間のようでした。

MP:この瞬間を覚えています、それは本当に革命的でした。 これまでは、投稿とページを使用して、文字通りすべてを変更するカスタム投稿タイプのいくつかの回避策を作成する必要があったためです。

DV:ええ、カスタムCMSと同じです。 あなたはおそらくあなたのカスタムフェイスタイプのクレジットを持っていました。 だから私たちも持っていました。 それは大きな年でした。 そして、その直後に私が働いている大きなリリースのWPエンジンが誕生しました。 10のWeb開発スタジオのような大規模なエージェンシーの束だけでなく、WooCommerceのようなものも本当に革命的な時間とWordPressの歴史です。 涼しい。 さて、私はそこにちょっとしたユニークさを手に入れました、そしてその起源の物語はかなりきちんとしています。 ですから、イントロで、バディドットが機能することを知っていると聞いているときに、先ほど話しました。 そして、あなたはそこにいるすべての人に、どのバディが働いているのか、どのバディがあなたのしていることをしているのかを伝えます。 三。

MP:それで、申請者のCICアプリケーションが機能すると思います。つまり、GitHubアクションとほぼ同じです。または、GitLabアクションは、展開の自動化に役立つ他のすべてのアプリケーションです。 違いは、UIが非常に使いやすいことです。そのため、CACを使用してアドベンチャーアドベンチャーを開始しようとします。 たとえば、GitHubアクションでは、このYamoファイルをいじくり回す必要があります。 そして、bodyを使い始めると、非常に優れたUIが得られます。これは、Gutenbergを取得するのと似ているだけで、ブロックからCICDパイプラインを作成するだけです。 とても簡単です。 そして、これが私が何年も前にそれを使い始めた理由でもありました。 私は自分の開発フローによって自動化したかったのですが、あなたがそれをする必要はありませんでした。

DV:彼はこのようなことをしましたが、あなたがそこで働く前でさえ、もちろん、私はあなたのユーザーの問題でした。それは素晴らしいことです。

MP:はい、私は以前よりも最初にユーザーでした。 誰もが使いやすいので、どこで働いていても、働く人に体を変えてもらうように心がけていたので、オフィシャルアンバサダーと呼ぼうと思います。 そして、それはとてもよかったです。 一年前、バディの人たちが私に「ねえ、私たちのために働きたいですか」と尋ねたのを聞いてとても良かったです。

DV:打席で何をしますか? あなたの仕事は何ですか?

MP:私はメッセンジャーで働いています。つまり、主にWordPressスペースの人々にCICについて教育しようとしました。 DevOps自動化のおかげで、プロセスを自動化する方法に貢献する方法、何ができるか、ローカルサーバーから、またはサーバーのためにローカルホストからコードをデプロイするだけでなく、多くのことがありますできる。 その間に、コードをテストして、何かを購入することができます。

DV:その話を共有する機会をたくさん与えるつもりです。 CI CDの詳細に飛び込む前に、私はただ興味があります。Bettyには、WordPress、ci CD、より簡単に適応できるものがあると思います。 本当? 特定のWordPressのもの、またはそれはより一般化されており、WordPressにも適しています

MP:まず第一に、私たちは非常に多くのアクションを持っているので、それらの多くはWordPressと一緒に非常に簡単な方法で使用できます。たとえば、作曲家NPMに関連するすべてのものです。 したがって、これらは少し一般的ですが、WordPressスペースのほぼすべての開発者が使用しますが、たとえば、いくつかの特定のアクションにも取り組んでいます。現在、WordPressユニットテスト用の環境を準備しています。 おそらく、そのPHPコードスニファーを拡張してWordPress WordPress標準をアクションに組み込む予定なので、このようなことを考えて、常に新しいものを追加するために描画しようとしています。 したがって、誰かが新しいアクションを実行したい場合は、私たちに連絡するだけでよいでしょう。アクションの必要性についての声が増えると、作成する可能性が高くなります。そうでない場合は、非常に自分でやるのは簡単です。 アクションをそのように構成する機会は常にあります

DV: PHPとWordPressのコーディング標準、マッシュアップを作成したチームがたくさんあることをご存知でしょう。 人々がそれを手に取って行くことができる何かに取り組んでいると聞いて、これほど素晴らしいことはありません。 さて、ここではかなり知識のある群衆だったので、超高レベルからCI CDの詳細に飛び込みましょう。しかし、CI CDが何であるかを人々がどのように理解しているか、あまりよく知らない人のために作っていただけませんか。

MP:ええ、まず第一に、CIを知っているように、CI CDのCD部分は、企業とは何の関係もありません。そうですが、CICDは2つの意味を持っています。 そのCIは継続的インテグレーションです。 つまり、コード内の内容を変更するたびに、すべてのテストを実行する必要があります。小さな変更を加えるたびに、コードが常に機能していることを常に確認する必要があります。 つまり、これはCIの部分です。 そして、CBの部分があります。これは、継続的な開発または継続的な展開のいずれかを意味する可能性があるため、2つのことを意味します。 継続的な開発とは、ビルドされたビルドバージョンを出荷する準備ができるたびに、リリースの責任者が社長ボタンを押すだけでライブにプッシュできることを意味します。 そして、展開はすべてが自動であることを意味するので、それらは継続します。 したがって、誰かがプッシュ変更をプッシュするたびに、それが実行され、本番環境に自動的にデプロイされます。

DV:それは、人々がCI CDの採用について考え始めるときに、ワークフローにこれらの自動チェックを含めることで回避できるすべての頭痛の種を想像する部分だと思います。それはあなたが知っていることであり、多くの人々を魅了していると思います。それに。 興味がありますが、CICとワークフローを使用して、どうして面倒なのか、何がメリットなのかなどの概念についてのあなたの考えはありますが、次の休憩の後、それを探求したいと思います。この休憩の後。 コマーシャルの休憩にプラグインする時間。 すぐにこれをさらに押すのをお楽しみに。 こんにちは、みんな。 ようこそ、WEMRのWordPressコミュニティポッドキャストを押してください。 これはあなたのホストであるDavidVogelPaulです。そして、魔法のLebowskiとのインタビューがあります。オフスキーのBuddyは、休憩の直前にICDとWordPressの魔法を見て、CICDとは何かについて少し話しました。 それは非常に簡潔な説明でした。 有難うございます。 したがって、明らかにCI CDのように、おそらくいくつかの余分な作業があります。 確かに、ワークフローの設定に関しては余分な作業であり、ワークフローをある程度の能力で操作することさえあると思います。 そして、多くの人がWordPressを使用する可能性があることを知っています。カウボーイやカウガールのコーディングが大好きなだけでなく、以前はワイルドリストコーディングと呼んでいました。 しかし、CI CDの利点は何だと思いますか? なぜそこで余分な作業を気にするのですか?

MP :私にとって、それは私のチームの他の誰かによって行われたので、私が知らないカウントの一部の休憩時間にコードの一部で私の小さな小さな変更を確実にすることでした。 アプリケーションのスクリプトのもう一方の端のように。 そして、これは常に発生することです。特に、より大きなチームでアプリケーションを構築している場合はそうです。 私たちはコード全体を知りません、そして私たちの小さな変更が何か他のものを壊す可能性があることは本当に起こり得ます、そしてファクトリーを持っているのでいくつかのテストを持っているおかげで、それが起こらないか少なくとも起こることを確信できます。 あなたがそれらのテストを持っていなかったかのように頻繁ではありません。 テストの唯一の問題は、多くの開発者がコードをテストする必要があることを知っていることです。 主に会社の所有者を持つマネージャーには常に問題があります。 そして、有名なことわざでは、テストを作成する時間がありません。もちろん、テストを作成する時間がないということを聞くたびに、それは間違っています。 2週間後。 テストが不足しているために見逃していたものを修正する予定です。 1、2時間早く費やすだけで回避できるものを修正するために、時間を無駄にしていること。

DV:つまり、ゆっくりと移動して速く移動するようなものです。 ええ、それはあなたに少し余分な時間を要します、しかしあなたは後でもっと多くの時間を節約するつもりです。 火事と戦う必要はなく、正確な反応でリラックスできます。

MP:また、あなたがあなたを完全にコントロールできるので、ライティングテストを計画するのははるかに簡単です。 他のことをしている最中でなくても、製品やアプリケーションの作成の一部としてテストを作成するには、これらの2〜3時間を追加するだけです。 そして、深夜に展開するクイックフィックスなどのクイックフィックスを作成する場合は、世界中が燃えているときに何かを行う方が常に良いでしょう?

DV:ええ、そのような危機の間の仕事と生活のバランス、仕事の質、そして風。 これらはすべて良い点です。 また、その曲を思い出させてくれます。99のようなものか、コードの99の小さなバグのようなものです。たとえば、その曲が高速である場合の約107ドルのようですが、現実はテストがないので、コードのバグについては、外部の誰かが問題を見つけていない場合に問題について叫び始めるまでわかりません。

MP:テストがなければ、太陽は非常に長くなり、コードには未定義の数のバグがあります。 これが問題です。

DV:別の子供の歌があります。 終わらない歌です。 そして多分それはNCICのバージョンです。 大丈夫、かっこいい。 さて、この背後にある私たちの歌のアナロジーと私たちはここでもう少し深く掘り下げることができます。 あなたやあなたのチーム自身のCACスタックは、あなたが話したように、仲間の外ではどのように見えますか? 私は推測していますが、彼はフロー内で独自のスタックを使用しています。 しかし、特にWordPress CACにとって、他にどのようなツールが重要だと思いますか。

MP:たぶん私の例では、体の外でもWebサービスの手紙に絶えず取り組んでいるからです。 そしてもちろん、私はすべてを更新するためにbodyを使用しています。 この場合、たとえばBaddeckを使用して、Webサイトを静的にし、WP静的プラグインを使用して静的に変換します。 私はアップデートの大ファンなので、GitHubに1つまたは2つのプラグインをリリースするためにも使用します。 ですから、私たちがそれを使用できる方法はたくさんあります。 私が言ったように、のためだけでなく、ものを展開するために。

DV:先ほどのように、PHPの安定性スニッパーのような例であり、WordPressのコード品質が私にとって際立っているのは、WordPressCACスタックの主要なアイテムのようなものです。 私はただ興味があります、例えば、あなたが手に負えないと考えることができる他の重要なものはありますか?

MP:つまり、ほとんどの場合、それらをクラシックと呼びましょう。phpcsはユニットテスト用のPHPユニットの1つだからです。 私はまた、エンドツーエンドのテストのためのサイプレスIOの大ファンです。 そうそう、それらはああです、そしてもちろん、私も好きです、そしてこれは私たちがビジュアルテストと呼ばれるものを持っている体に組み込まれています。 それで、展開の前後の画面を比較して、何かが壊れたかどうかを確認しますか?

DV: WordPressコアチームのメインJasのWordPressユニットテストもあります。

M P:ええ、つまり、ほとんどの場合、私はWPモックを10まで使用することを好みます。 しかし、はい、時々私はそれらを使用します、それらの2つのコアユニットテストは、つまり、それらは時々迷惑です。 設定方法がわかりません。 たとえば、Windows上のコンピューターでは、常に問題が発生します。

DV:あなたが言うように、ユニットテスト側では、それはあなたがあなた自身のユニットテストを書くことを好むという意味ですか? そうだと思います。 しかし、私はただ興味があります。

MP:ほとんどの場合、データベースへの接続を必要としないため、WPモックを使用しているようなものもあります。この場合、大規模な製薬会社は統合テストであることが多いため、単体テストではWordPressに接続しないでください。 ええ、WPモックを予約してください。 プラグインでチェックインする必要があることに集中するだけで、テスト用の環境全体を作成することについて心配する必要はありません。 だからそれははるかに簡単です。 時々私はブレインモンキーと呼ばれる他のスクリプトも使用します。 したがって、全体として、単体テストを使用する場合は、データベース以外のアプローチを好みます。

DV:それは聞いて本当に面白いです。 これについてちょっとした副次的な質問をするとき、あなたは途中でWordPressをどのように発見したかについて言及しました。 WordPressアプリケーションを作成するときは、常にCAC recherchesを使用していましたか、それともカウボーイコーディングのように始めて、ICDを見るようになりましたか?

MP:もちろん、私はカウボーイのコーディングから始めました。 私はいいえいいえ私はより賢いより多くの純粋なものを言うことができますええ、私たちはFTPを介してすべてをプッシュし、それがアップロードしなかったファイルを疑問に思います。 うん。 うん。 だから私はこのように始めました、私はみんなのように、メモ帳でファイルを開いてほとんどサーバー上で修正しようとしているように、しばらくしてファイルがアップロードされなかったことを発見したと思いますウィンドウを閉じるとファイルがなくなりました。 そうですね、このようなケースはたくさんありましたが、ある時点で、まずローカルホストで開発してから本番環境に移行する方がはるかに良いことを学びました。開発者は怠惰な人なので、正直に言ってこの怠惰から、多くの興味深い発見が生まれます。 それで、私はいくつかのプロセスを自動化する方法について学び始めました。 たとえば、FileZillaなどを使用しないことを心配せずに、サーバーにデプロイするための優れた方法で、これに戻る方法を説明します。 終わりを考えてくださいはい、私は終わりまでに見つけました、そしてここに私はいます、

DV:どうぞ。 これは、採用、フロー、プロセスなど、次のトピックに少し入り込んでいますが、そこでのモチベーションについて聞くのは興味深いことです。 多くの人が怠け者だと思います。 効率は大きな魅力だと思いますが、問題や危機的状況での時間とエネルギーについては、後で返済する必要があります。 注意しないと、怠惰が戻ってあなたを噛むことを知っています。 ですから、これは非常に話題性のあることだと思います。 最後の休憩を取り、すぐに戻ってきます。 コマーシャルの休憩にプラグインする時間。 すぐにこれをさらに押すのをお楽しみに。 誰もがこれを押すことを歓迎します。 私たちは、WordPressでのCI CDの重要性と、人々がコードをライブでプッシュしているときに、そこでより多くの採用とより多くの安全性を得る方法について話し合っている最中です。 休憩直前。 マジックは、CACを採用し、ファイルを削除し、アプリケーションを地面に焼き付けるという彼の歴史について少し話していました。そのようなもののような悪い機能リリースがあると思います。 確かに、私はそこに行ったことがあります、そうです、私たちは想像することができます。 では、この質問をさせてください。 怠惰が理由だと以前にほのめかしたように、おそらく人々はCICDを採用しません。 つまり、WordPressの世界には明らかにベクトルがあると思います。 それは、WordPressでC ICDが見過ごされがちな理由のように、技術的な性質にも関係していると思いますか?

MP:まず第一に、CICに関して最初の最大の問題は、バージョン管理について何かを最初に学ぶ必要があるという冒険を始めることです。 Gitについての知識がなければ、目を使うことはできません。 そして、私がさまざまなWordCampsの間に何人かの人々と話しているとき、それらすべての回廊の話は、今ではほとんどズームを探していないので、Victoireが持っているガバナンスです。 このようなバージョン管理をまだ使用していない開発者がたくさんいることを知りました。 どうしてか分かりません。 つまり、彼らのほとんどはそう言っています。 Gitを使用すると、すべてが遅くなりました。 開発プロセス全体が難しくなり、そのようなことが起こりました。 そして正直なところ、私はそれを理解していません。 しかし、これは興味深いことです。 これは、私たちが体であるだけでなく、CSVに関連する企業は、バージョンを使用する理由を人々に教育し始める必要があると思います。これがなければ、自動化の次のステップを実行したいからです。 そして、彼らがそれを使い始めると、C ICDは自然なものになると思います。特に、開発フローがますます複雑になると、ローカルマシンからサーバーにファイルをプッシュするだけではないからです。 、多くの場合、CSSからCSSを構築する必要があります。 JavaScriptを圧縮する必要があります。画像を圧縮する必要があります。ヘッドレスアプリのルーティングに関しては、アプリケーション全体を構築する必要があります。 したがって、コードを本番環境にプッシュする前に、発生しなければならないことがたくさんあります。 ですから、何年も前に、メモ帳を開いてコードを記述し、それを本番環境にプッシュしたことを本当に覚えています。 それがすべてでしたそして今それはより困難です

DV:うん。 それは本当に深いポイントだと思います。 採用の過程と段階、およびバージョン管理がどのように行われるかについて考えることについては、CICDを採用するために習得する必要があるものの全体よりも親しみやすい重要な第1段階です。 ここの最後の数分または最後の分で、私は推測します。 CI CDの採用を考えているリスニング者と共有する他のリソースはありますか?

MP:私は男をだますと思います。 まず、この人がバージョン管理について学んだ後、私が言ったように、これが基本であり、それがなければ、さらに先に進む機会があります。 このグラフィカルインターフェイスのおかげで、bodyを使用してみます。 それは超簡単。 試行錯誤しても、始めるのは非常に直感的です。 しかし、それはとても簡単です。 そして、私は自分がどのように行動したかを知っており、バディと実際に遊んでみると、CICカウンター全体を理解するのに役立ちました。 はい、それは本当に役立ちます。 それは本当に大いに役立ち、誰かが基本を理解するとき。 次のステップは、コードをデプロイするさまざまな方法について、これらすべての単体テストについて学習することです。これは、コードをデプロイする方法がたくさんあるためです。 また、FTPまたはSFTP Windowsアークを使用する必要がないため、異なるプロトコルを使用することを意味するわけではありません。たとえば、サーバーにログインして、Gitまたはその他の方法からダウンロードできます。 それを行うには非常に多くの方法があります。 しかし、最初に、基本を学び、それがいかに簡単であるかを見てみてください。 そして、テスト全体がもたらすことができる次の部分は、段階的にやってくるでしょう。 最悪の事態

DV:以前にtunapから参照したもののように、事前に実行された単体テストのように、リフが好きで、それも一種の素晴らしいブリッジであることがわかりました。 それは他の多くの人々にとって役立つでしょう。 しかし、これはすべてとてもクールで、本当に非常に興味深いものです。 とにかく、私は確かに私のシェアを知っていると思います。カルガリーであなたの作品をプッシュした私自身も、とにかくカバーを取得しているので、これらの点のいくつかについてここでもう少し深く掘り下げる必要がありました。 しかし、GQが非常に素晴らしかったとき、今日はショーに参加できて良かったです。

MP:デビッド、ありがとう。 CI CDについての考えを共有することは本当に素晴らしかったし、もっと多くの人がそれを試してくれることを本当に望んでいる。

DV:すばらしい。 魔法が何をしているのかについてもっと知りたい、またはbuddy.worksにアクセスできるCI/CDでの旅をチェックしたいのは何ですか。 WMRでこのWordPressコミュニティポッドキャストをプレスするのを聞いてくれてありがとう。 これはあなたのホストであるDavidVogelpohlです。 私はWPエンジンでの役割を通じてWordPressコミュニティをサポートしています。 そして、私はPress Thisで毎週、コミュニティの最高のものをここに持ってくるのが大好きです。