従来、「Shift-Left」というと「ソフトウェア品質に関するテスト」として使われるキーワードでした。ソフトウェアの問題は、開発ライフサイクルのリリース直前の後期フェーズよりもコーディング等の早期フェーズで発見することにより、手戻り工数を大幅に削減することができます。
しかし最近では「セキュリティー脆弱性検証のShift-Leftを実現したい」ということを様々なお客様から相談されることが増えてきました。
このブログ記事では「セキュリティー脆弱性に関するShift-Left」とはどのようなソリューションなのか、ご紹介いたします。
セキュリティー脆弱性検証のShift-Leftとは? (SB C&S サイト)
We Build What You Want の翻訳版です。
HCL Complass はご希望通り、どんなビルドにも対応します
2021年7月8日
著者: Arlene Kim / Product Marketing Manager
我々はあなたの欲しいものをビルドします
HCL Compassはお客様が求めるものビルドします。7月13日の 23時(日本時間)、HCL Compass は、お客様のパフォーマンス目標の達成を支援するために行われた新製品と広範囲にわたる機能強化について説明します。HCL Compass の技術者が、HCL Compass の完全にカスタマイズ可能なワークフロー管理システムの新機能を実演します。
このウェビナーでは、以下のことを学ぶことができます。
カスタマイズによる柔軟性を備えたこのローコード/ノーコードの変更管理ソフトウェアは、エンタープライズレベルのスケーリングに対応しており、プロジェクトのデリバリーを加速し、生産性を向上させるための適切なツールを提供します。分析、開発、テスト、デプロイメントなどのサイロ化されたプロセスを統合することで、コラボレーションを向上させる方法を当社チームが実演しますので、ぜひご参加ください。
お申し込みはこちらから。
Launch 7.2: Impactful Updates Enabling Faster Continuous Delivery の翻訳版です。
HCL Launch 7.2: 継続的デリバリーの高速化を可能にするインパクトのあるアップデート
2021年7月1日
著者: Senthil Nathan / HCL Launch Product Manager
継続的デリバリープロセスを促進する適切なツールを持つことは、成功に不可欠です。Launch 7.2 のユーザーは、継続的デリバリーの高速化を可能にするインパクトのあるアップデートの力を利用しています。
世界中で30億台以上のデバイスがJavaを実行しています。環境内の多数のデバイスにパッチやメンテナンスを適用したり、将来のリリースを着実に更新したりすることは複雑です。Javaのパッチを手動で適用している場合、チームはどうやってデジタルトランスフォーメーションに集中できるでしょうか?HCL Launch 7.2では、Javaの配布管理は簡単で、Launchダッシュボードからサーバーサイドで行われます。
接続されているデバイスのステータスをリアルタイムで確認できるので、どのアップデートやパッチを適用する必要があるかをすぐに特定できます。HCL Launch 7.2では、無制限のJavaパッケージをアップロードして、環境内の異なるデバイスやアーキテクチャに適用できます。
エージェントをクリックし、行の右側にあるメニューを使用して、インストールする特定のエージェントを選択できます。
インストール状況の確認とメンテナンスの実行は、リソース>エージェント>特定のエージェントを選択し、メンテナンスタブに切り替えることで行います。ここでは、Java の全メンテナンス履歴を確認できます。
エージェントレベルの新しい Metadata ページでは、そのエージェントにインストールされているすべての Java バージョンを確認できます。
新しい Java バージョンが UI にインストールされると、エージェントの JAVA_HOME を新しい Java のホームに設定できます。
エージェントをすばやく再起動すると、新しいJavaバージョンが稼働します。以上で終了です。新しい Java バージョンをインストールするために、ターゲットマシンにリモートアクセスしたり、複雑なスクリプトを書いたりする必要はありません。
新しい Java バージョンがインストールされた後は、「Java パッケージのアンインストール」オプションを使って、古い Java バージョンのクリーンアップに自由に取り組めます。
Java のアップデートに Launch を使用しない場合でも、「Javaホームの設定」機能を使用してエージェントの Java ホームを設定できます。ただし、この場所は、Java がインストールされているエージェントからアクセス可能な絶対パスである必要があります。
Java の配布管理は大きなタスクであるため、IT リソースの最適化のためには効率的に行うことが重要です。Javaの管理に費やしていた時間を取り戻すことで、チームはデジタルトランスフォーメーションに向けた作業に集中できます。
HCL Launch 7.2 を使って何でもどこでもデプロイする方法について詳しく知りたい方は、次回のウェビナー HCL Launch 7.2 の新機能 にご参加ください。
Collaboration Tool Integration with HCL Launch の翻訳版です。
HCL Launch によるコラボレーションツールの統合
2021年6月22日
著者: Senthil Nathan / HCL Software Launch z/OS Architect
メールが唯一のチームコミュニケーションツールであった時代は終わりました。リモートワークへの急速なシフトに伴い、ダイナミックな企業は Slack や MS Teams のようなツールを採用し、シームレスにファイル共有、チャット、接続を行っています。
最新バージョンの HCL Launch 7.2.0 では、HCL Launchと統合することで、これらのチームコミュニケーションツールを強化できます。連携することで、コラボレーションツールに直接通知が表示され、バリューストリームの状況をリアルタイムに把握できます。Webhookインテグレーションを使用して、Teams、Slack、またはコミュニケーションツールのLaunchチャンネルにサブスクライブするだけで、通知を受け取れます。
Webhooks とは?
Webhook は基本的に、イベントによって駆動する HTTP コールバックです。Webhookは、特定のイベントが発生したときに通知を可能にします。Webhook の URL には、情報を必要とするサービスに関するすべての必要な情報が格納されています。Webhookのテキスト・ボディには、Webhook が生成されたイベントの詳細が記載されています。Webhook は DevOps の自動化でよく使われます。HCL Launch 7.2.0 では、発信型の Webhook をサポートしています。
デプロイメントの状況を簡単に把握するために、以下のようなHCL Launchのイベントに応じて通知 (Webhook) をトリガーすることができます。
現在 Slack や Teams を使用していない場合、通知 (Webhook) は、Webhookを受け付けるあらゆる製品やアプリケーションに送れます。Launch通知に接続したいアプリケーションについては、Apache Velocityのテンプレート形式を使用した Webhook テンプレートを作成する必要があります。上記のイベントタイプごとに、任意の数のテンプレートを作成できます。
例えば、以下の Webhook テンプレートは、Microsoft Teams 用に作成されたものです。このテンプレートには、Webhook の本文のみが含まれており、URLは含まれていないことに注意してください。
Webhookテンプレートには、Teamsの関連付けもされています。これにより、Webhook テンプレートを表示できる人にアクセスが制限されます。
Webhook の URLは、アプリケーション環境レベルで設定されます。このようにして、企業レベルではテンプレートを再利用し、個々のチームではアプリケーション環境レベルで異なる宛先への通知を設定できます。
アプリケーション環境レベルでは、以下のように複数のWebhookを設定できます。
雑音を排除し、チームの集中力を維持します。ユーザーが所属しているチームに応じてアラートを設定することで、関連する通知のみを受け取れます。例えば、低環境用の Webhook トリガー通知を特定の Teams や Slack チャンネルに送信し、本番用の通知を別のチャンネルに送信できます。
あなたの企業のデプロイメントは重要です。次回のウェビナー What's New in Launch 7.2.0 では、Launch ユーザーが何でも、どこでも、より速くデプロイできるようにするための最新機能をご紹介します。
Integrating Jenkins and HCL Launch の翻訳版です。
Jenkins と HCL Launch の統合
2021年6月4日
著者: HCL Software / A division of HCL Technologies (HCL)
多くのチームは継続的インテグレーションに Jenkins を使用していますが、ビルドのデプロイを環境に合わせて調整する必要があります。 Jenkins を使ってこれらのビルドを作成し、新しいビルドをHCL Launch に渡してデプロイできます。オプションとして、ビルドをテスト環境に自動的にデプロイすることもできます。
Jenkins Publisher プラグインをダウンロードします。
プラグインを Jenkins サーバーの Web サイトにアップロードします。
http://jenkins-server:8080/safeRestart を使用して新しいプラグインを確認するために、 Jenkins サーバーを再起動します。
プラグインがインストールされ、有効になっていることを確認します。
HCL Launch サーバーのプロファイルを追加します。
各ジョブの Post-build Actions を設定します。
プラグインが Jenkins サーバーにインストールされ、指定したHCL Launchコンポーネントにアーティファクトがパブリッシュされます。 その他のアプローチ
ポストビルドアクションがチームにとって適切でない場合や、単一のビルドから複数のコンポーネントに成果物をプッシュしたい場合は、いくつかの他のオプションがあります。
HCL Launchの1対1のデモをご希望ですか?こちらからリクエストしてください。
How to Build Dynamic Dashboards: An Introduction の翻訳版です。
HCL Compass: ダイナミックなダッシュボードの作り方 -イントロダクション-
2021年5月28日
著者: Steve Campbell / Senior Technical Manager
HCL Compass 2.0.2 では、テクニカル・プレビューとして、サードパーティーのダイナミック・ダッシュボード・ツールとの統合を導入しました。統合レイヤーは Node-RED を使用し、HCL Compass への接続を可能にする Compass-Query Node を公開しています。これは、定義されたクエリからデータを抽出する目的で、接続を作成するインターフェースを提供します。Compass-Query Nodeは、HCL Compass のユーザーが、サードパーティーのソフトウェア製品で使用するために Compass のデータに簡単にアクセスできるよう、組織を支援することを目的としています。
Microsoft Power BiやTableauのようなダイナミック・ダッシュボード・ツールは、統合レイヤーを使用して HCL Compass からデータを引き出し、カスタム・ダイナミック・ダッシュボードを作成できます。Compass-Queryプロジェクトのすべてのドキュメントは、HCL Compass のパブリック GitHub プロジェクトで公開されています。
次のビデオは、HCL Compass を使用してダイナミック・ダッシュボードを構築する方法を示しています。
HCL Compass の詳細情報が必要ですか?
HCL Compass は、プロジェクト・デリバリーを加速し、開発者の生産性を向上させるために、エンタープライズ・レベルのスケーリング、プロセスのカスタマイズ、コントロールを可能にする、ローコード/ノーコードの変更管理ソフトウェアです。もし、ご自身の業務に適していると思われたならば、私たちのサイトで、HCL Compass のユーザーになることの利点を探ってみてください。
A "day in the life" with HCL Software DevOps の翻訳版です。
HCL Software DevOps: "Day in the Life" のデモ
2021年5月18日
著者: Allan Wagner / HCL Software Transformation Architect
HCL Software DevOps は、あらゆる組織の DevOps ニーズを満たす統合ソリューションを提供しています。証拠が必要ですか?Emerald と呼ぶ架空のeコマース企業を使った例を見てみましょう。
エメラルドのメモリアルデーのビッグセールが数週間後に迫っています。この年に一度のセールイベントは、エメラルドの会計年度の中で2番目に大きな収益源であるため、サイトのすべてが完璧に機能していることが非常に重要です。残念ながら、エメラルドのサイトを訪れた人から、新規顧客として登録する方法がわからない、エメラルドのアプリケーションへのサインインに問題があるという報告がありました。製品チームはこの問題を修正し、Emerald がメモリアルデーのセールに間に合うように、できるだけ早く変更を本番に移さなければなりません。幸いなことに、Emerald は以下のような HCL Software DevOps ソリューションを使用しています。
これらのソリューションはすべて、HCLソフトウェアのクラウドネイティブソリューションである HCL SoFy に導入されており、Kubernetesを簡単に利用することができます。ユーザーは、HCL SoFyのカタログから使いたい製品を選び、「デプロイ」ボタンをクリックするだけ。数分後には、ユーザーは仕事に必要なソリューションを手に入れることができます。
Emerald社のプロジェクトマネージャーであるPaula氏は、HCL Compassでの作業中に、優先度の高い不具合が提出されたことに気付き、修復を開始するための計画フィールドを完成させました。その際、彼女はチーム、オーナー、そして履歴に基づいて適切と思われるストーリーポイントの数を特定します。また、ビジネス上の重要性を考慮して、サービスクラスを「迅速」に設定します。さらに、その修正が含まれるべきリリースとスプリントを選択し、バックログの状態に移行します。
次に、EmeraldのアナリストであるAlは、このワークアイテムをレビューし、開発者に追加情報を提供する。Alは、HCL Compassでバックログのすべてのワークアイテムを検索して、この最新のワークアイテムを見つけます。項目を開いて「計画」セクションを展開すると、AlはPaulaがこれを「迅速」とフラグを立て、アクティブなスプリントでの納品を予定していることがわかります。問題を完全に理解するために、Alはまず本番のEmeraldアプリケーションを調査し、ウェブサイトの訪問者がなぜ混乱しているかを確認します。彼は、HCL Compassで欠陥の説明を更新し、ワークアイテムを「分析済み」の状態にします。
エメラルドの開発者であるダイアンは、このスプリントですでにいくつかの仕事を割り当てられていますが、現在はいくつかの依存タスクが完了するのを待っています。帯域幅に余裕があるので、彼女はHCL Compassにログインして、作業状態に引き込める優先度の高いワークアイテムがないかチェックします。そこで彼女は、「迅速」とマークされた欠陥を見つけ、その作業項目のオーナーシップを受け入れ、修正作業を開始しました。
LindaはEmeraldの開発チームのリーダーです。彼女の一日は、この新しい欠陥を知らせるメールやメッセージが飛び交う中で始まり、その修正を製品に反映させることがいかに重要であるかを強調しています。このストレスに加えて、リンダはすでに自分のチームがキャパシティに達していることを懸念しており、根本的な原因やこのキャパシティの問題に対処する方法の答えを持っていません。HCL Accelerate では、Linda はバリューストリームのダッシュボードを見て、本番インシデントの概要を確認し、HCL Accelerate が Emerald Commerce Storefront バリューストリームの作業段階でボトルネックを特定したことに気づきます。バリューストリームを掘り下げると、Linda はボトルネックにカーソルを合わせ、それがフローの不均衡の結果であること、つまり「作業」段階に入る作業が出る作業よりも多いことを確認します。HCL Accelerateは、AI機能を使用してボトルネックを特定し、Accelerateのリポジトリに保存されているデータにアルゴリズムを適用することで、チームがスロースポットを特定するのを支援し、根本原因の詳細を提供して改善を加速させることができます。リンダは、チームの準備が整う前に作業を段階的に進めると、潜在的にチームの認知能力を超えてしまい、人為的でありながら回避可能なバリューストリームのボトルネックが発生することを知っています。リンダはまた、HCL Accelerate が「作業」ステージの「進行中の作業」制限を超えていることを強調していることに気づきます。彼女は、ワークアイテムのリストを確認し、過去24時間に2つの追加があることを確認します。ワークアイテムIDを素早く検索することで、Lindaは2つのワークアイテムを簡単に分離して確認することができます。また、スプリントごとにワークアイテムをフィルタリングすることで、アクティブなスプリントに関連する作業のみが実際に作業段階にあることを確認できます。必要なデータを手に入れたリンダは、次のスタンドアップミーティングで、作業をパイプラインステージに押し込んだり、引き込んだりするとフローが乱れることについて話し合うことにしました。
このデイリースタンドアップミーティングで、リンダは HCL Accelerate のスイムレーンビューを所有者別にフィルタリングした画面を共有しました。各チームメンバーが自分に割り当てられた作業の最新情報を共有した後、リンダは懸念を表明し、ストーリーの1つを分析段階に戻すことについてチームの考えを求めます。これにより、HCL Accelerate が指摘したボトルネックと仕掛かり品の問題が解決され、チームは優先度の高いタスクに集中することができます。
Emerald の製品オーナーである Peter は、機能リリースを遅らせる可能性のある顧客の問題が生産中であると人づてに聞いたため、心配になっています。状況に関する最新のデータを得るために、ピーターはHCL Accelerateのスイムレーンビューに行き、エピックでフィルタリングします。彼は、最も懸念している2つのエピックと、それらが本番でどのような状況にあるかをすぐに確認することができます。
LindaはDianeのソフトウェア修正を確認した後、Dianeからのプルリクエストをクローズし、変更を受け入れます。プルリクエストを閉じることで、マージとビルドが行われ、新しいバージョンがデプロイできるようになります。事態を迅速に進めるために、リンダは HCL Accelerate のパイプラインビューに移動し、新バージョンがベースのユニットテストと静的スキャンを持つ展開可能なアーティファクトとしてリストアップされていることを確認します。Linda は、最新バージョンを開発環境にデプロイする準備ができており、そこでレベルの高いテストを受けることになります。
HCL Launchで作業するLindaは、最新のアプリケーション・バージョンがどの環境にもデプロイされていないことを確認することから始めます。HCL Launchのスナップショット・ビューで、Lindaは新バージョンがデプロイ可能であることを確認し、従うべきデプロイメント・プロセスを選択して開発環境へのデプロイを要求します。実行ログでは、Linda氏はデプロイメントプロセスのすべてのステップを発生時に確認し、出力ログにドリルダウンして各ステップの詳細を見ることができます。API の力を利用して、HCL Launch は HCL Accelerate にデータを送信してパイプライン ビューを更新し、最新のアプリケーション バージョンが開発環境に正常にデプロイされたことを示します。
エメラルド社のテスターであるティムは、ある変更が開発環境にデプロイされることを知り、新しい機能を検証したいと思っています。ティムはHCL OneTest Serverで作業を行い、必要なテストを立ち上げます。Emeraldプロジェクトのダッシュボードを確認すると、さまざまなテストタイプの7つのテストスイートが実行されたが、そのうちの1つのテストスイートが失敗したことがわかる。アラームを鳴らす前に、ティムは失敗したテストスイートのHCL OneTestテスト実行結果をチェックします。実行されたテストステップをスクロールし、テスト中に実行されたアプリケーション画面の画像を見て、ティムはアプリケーションが正常に動作しており、テストも正しく実行されているという結論に達した。問題は、テストデータにある。
ティムは、テストデータが悪いためにテストが失敗することに不満を感じており、さらにテストデータファイルの管理に無駄な時間を費やしていることにも不満を感じていました。そこで彼は、HCL OneTest Serverのテストデータ作成機能で作成した合成テストデータを使って実験を行い、テストを実行することにしました。この実験が成功すれば、長期的には時間の節約になり、Emerald社のテスト活動を新たなレベルで最適化することができるとTim氏は考えている。HCL OneTest Serverのデータ作成画面で、ここで提供されたスキーマが、必要なデータフィールドを正確に含むテストデータファイルを生成することを確認しました。テストデータ作成用のスキーマを使ってテストを再実行したところ、合格しました。
すべてのテストが行われているので、テスト実行結果は自動的にHCL Accelerateに送られます。Linda は HCL Accelerate の「洞察」ビューで品質レポートを介して最新のテストデータを得ることができ、Emerald の関係者にアプリケーション修正の最新情報を簡単に伝えることができます。Linda は、このコード変更をさまざまな環境を通じて本番環境に移行し、HCL Accelerate でその進捗を追跡することができます。
HCL Software DevOps ポートフォリオのいくつかのソリューションを使用して、Emerald の製品チームは以下のことができました。
このストーリーを実際にご覧になるには、以下のビデオをご覧ください。
HCL DevOps製品群を使ったリアルなデモを作成しました。
具体的には、HCL Compass、HCL Accelerate、HCL Launch、HCL OneTest を使用したものです。開発現場の実際をリアルに模した A Day in the Life 型のデモです。その分、17分弱とちょっと長めです。
こちらの解説記事もあわせてご覧ください。