I love OSS. I love Vim, ubuntu, solarized_dark
- Security engineer
- Linux hacker
I'm looking for Github sponsers
GITHUB ACTIONS and devsecops tools document and demo.
Home Page: https://ryosukedtomita.github.io/devsecops-demo-aws-ecs/
License: The Unlicense
I love OSS. I love Vim, ubuntu, solarized_dark
I'm looking for Github sponsers
github-comment用のtokenの権限を絞る
現状,tokenに不要な権限がついている
削る
Releasesをタグ切った際にカスタムzipを作成して配置する。
name: create zip for user document upload script
on:
release:
types: [created]
defaults:
run:
shell: bash
jobs:
create_published:
runs-on: ubuntu-latest
steps:
- name: clone application source code
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: create zip
run: zip -r aoai.zip .azure scripts
- name: upload Releases
uses: shogo82148/actions-upload-release-asset@8f032eff0255912cc9c8455797fd6d72f25c7ab7 # v1.7.5
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: aoai.zip
asset_name: aoai.zip
docker buildx bake --set vue-app.args.BUILD_ENV=development
docker compose up
No response
rettierで日本語MarkdownをFormatすると謎の空白がはいる。
1.0.2 (Default)
No response
No response
No response
https://docs.github.com/ja/code-security/code-scanning/troubleshooting-code-scanning/advanced-security-must-be-enabled
自分はpublicで使っていたがorganaizationsとかprivateリポジトリだとでるらしい。
対策としてはCodeQLを使ってファイルを出力している部分を消したら消えた
# # reportsを生成(Actionsから確認できる)
# - name: save report as pipeline artifact
# uses: actions/upload-artifact@v4
# with:
# name: report.sarif
# path: report.sarif
# # scanの結果を解析。GithubのSecurity --> Code Scanning等でアラートが見られる。
# - name: publish code scanning alerts
# uses: github/codeql-action/upload-sarif@v2
# with:
# sarif_file: report.sarif
# category: semgrep
1.0.2 (Default)
No response
GitHub Actionsにて
Advanced Security must be enabled for this repository to use code scanning 403: GitHub Advanced Security is not enabled
github-commentを使うとCIの結果をマージコメントに記載できる。
また,不要なコメントの非表示もできるらしい。
CIの結果を見やすくする
default shellの設定がactionsで効いてないらしいので調べる。
GitHub Actions の vars は、リポジトリ変数(Repository Variables)を指します。これは比較的新しい機能で、機密性の低い設定値を保存するのに適しています。
リポジトリ変数(vars)の特徴:
機密性が低い情報の保存に適しています。
ワークフローファイルから直接参照できます。
リポジトリ設定から管理でき、複数のワークフローで再利用可能です。
環境ごとに異なる値を設定することができます。
GitHub UI上で値を確認できます(secrets とは異なり、マスクされません)。
一方、secrets は:
機密性の高い情報(パスワード、トークンなど)の保存に使用します。
値が常にマスクされ、ログに出力されません。
一度設定すると、値を再表示することはできません。
vars の使用例:
yaml
No response
pull request templateが効いてない以下を使うのはどうか
https://qiita.com/atsutama/items/03753925762fd094ec9c
1.0.2 (Default)
No response
No response
github pagesでアプリをデプロイする際にcommit hashを載せる。
https://qiita.com/ucan-lab/items/eeef46cee4b928106d1d
返信テンプレートは個人のアカウントに紐付いているので一度設定してしまえば便利そう
actionsのフルコミットハッシュを自動でバージョンに変換できる
https://docs.google.com/presentation/d/1rN4kTtvErrheZ3SXNr49XUHbiGIoorpfiLGXjLt5vsc/edit#slide=id.g2c674150394_0_163
Organizationsでpackage.jsonのhomepageをリポジトリ名に合わせるのではなく、謎のリダイレクト先に合わせる必要がある。
privateなのが原因?
https://docs.github.com/ja/actions/security-guides/using-secrets-in-github-actions
https://qiita.com/ak2ie/items/4fbcdf74e7760c49c1af→環境ごとにsecret切り替えられるらしい
envファイルからの一括投入も可能
gh secret set --env development --env-file .env.development.local
gh secret list --env development | awk '{print $1}'
VUE_APP_API_URL
${{ secrets.SuperSecret }}
取り出すときはこれ
環境の切り替えは
runs-on: ubuntu-latest
environment:
name: development # actionsのsecretの参照先を指定
こんな感じでやって取り出し方は同じ
github-pagesをデプロイ先にする
AWSにデプロイするとお金がかかるのでgithub pagesにデプロイするようにする
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.