Compare commits
117 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 200b0c34b1 | |||
| 0debae5ec7 | |||
| 52edf1b580 | |||
| da223f8a03 | |||
| f61ca9907b | |||
| 56c93ff752 | |||
| 1d8891efc2 | |||
| 93ee3d86f6 | |||
| 97d8c1c765 | |||
| 1b52eb3e6f | |||
| 216dc929eb | |||
| ef1ebb2538 | |||
| 440e8daf05 | |||
| 0f5b68ee4f | |||
| d9dc2c2f72 | |||
| 83bdb0fcd6 | |||
| ed8c87df74 | |||
| 09b078fd76 | |||
| 4a9a12a099 | |||
| 3a3f99717d | |||
| 281a35c5ef | |||
| dcdce00205 | |||
| 8a8c5b274c | |||
| 149db50d43 | |||
| c3de16f318 | |||
| 40f0709bd6 | |||
| 9fccb15dc6 | |||
| bafed29a86 | |||
| 042eac3858 | |||
| e3fc80f30e | |||
| c765d6316f | |||
| e6620ddc5b | |||
| 6e44c89176 | |||
| ffef54a02c | |||
| 700743e332 | |||
| a857e4e5a6 | |||
| 6b14bf21cb | |||
| ad91ff259d | |||
| 2e38bc8da2 | |||
| 5b659e82b4 | |||
| 764ebceaf5 | |||
| 122f83ece7 | |||
| 6a1dba2d71 | |||
| a95943d406 | |||
| d07ff38b96 | |||
| 3c200bdb21 | |||
| b258b33234 | |||
| c342a0c6e3 | |||
| b55a65157e | |||
| b7d9f15826 | |||
| 2a1abda503 | |||
| 85d2a866f0 | |||
| 5d273fbcb3 | |||
| d4dccf0b1e | |||
| c705225b8f | |||
| 596b345944 | |||
| 7b9e3b6858 | |||
| 13f632a90b | |||
| 65fef9614f | |||
| 02d91c6ccf | |||
| 6b053712be | |||
| 8c91a4c02f | |||
| 15daabeaa4 | |||
| 4087ed4594 | |||
| 7f30309cce | |||
| f0b8c8ad72 | |||
| 70655750b2 | |||
| cb6678504a | |||
| fd79bd4838 | |||
| b5a43f8049 | |||
| 9426610033 | |||
| b58a4e21c6 | |||
| 4a9a1680df | |||
| 5a1343bb22 | |||
| 97de22b47c | |||
| 835899e531 | |||
| 55f65bcc15 | |||
| 9b4fcbf911 | |||
| 7d41cdb581 | |||
| e4091f2f55 | |||
| 38d4e3bfd2 | |||
| 6dfa11d0c4 | |||
| 45ae2e08fc | |||
| 5e116cb9e8 | |||
| c36ea2c560 | |||
| 59daabb07b | |||
| 9095e7c9d5 | |||
| 1cb322141e | |||
| df5ac56102 | |||
| dda42cb8f2 | |||
| 3175118151 | |||
| 238e55b9b4 | |||
| 149cf11287 | |||
| 48e2865d35 | |||
| 30715e86a4 | |||
| ddf7fe1e94 | |||
| 6d89fb8045 | |||
| 028df69d88 | |||
| 99fae1ecb1 | |||
| b671ee6c7b | |||
| b33f57dde1 | |||
| 84a9757692 | |||
| 29e8b6c38a | |||
| c2cc54a69e | |||
| 7aa1944311 | |||
| e6aff964db | |||
| ff4d33e44b | |||
| 41e3bc11ea | |||
| 79ff92ef6d | |||
| e9f0116056 | |||
| 237e7737ce | |||
| fc748cc482 | |||
| 7b64f44165 | |||
| ac64f9caf5 | |||
| 98bde3b31e | |||
| 188b52b51c | |||
| 69184c7484 |
@@ -12,7 +12,8 @@ These are the workflow files for helping people get started with GitHub Actions.
|
|||||||
|
|
||||||
### Directory structure
|
### Directory structure
|
||||||
|
|
||||||
* [ci](ci): solutions for Continuous Integration and Deployments
|
* [ci](ci): solutions for Continuous Integration workflows.
|
||||||
|
* [deployments](deployments): solutions for Deployment workflows.
|
||||||
* [automation](automation): solutions for automating workflows.
|
* [automation](automation): solutions for automating workflows.
|
||||||
* [code-scanning](code-scanning): starter workflows for [Code Scanning](https://github.com/features/security)
|
* [code-scanning](code-scanning): starter workflows for [Code Scanning](https://github.com/features/security)
|
||||||
* [icons](icons): svg icons for the relevant template
|
* [icons](icons): svg icons for the relevant template
|
||||||
@@ -44,5 +45,5 @@ For example: `ci/django.yml` and `ci/properties/django.properties.json`.
|
|||||||
These variables can be placed in the starter workflow and will be substituted as detailed below:
|
These variables can be placed in the starter workflow and will be substituted as detailed below:
|
||||||
|
|
||||||
* `$default-branch`: will substitute the branch from the repository, for example `main` and `master`
|
* `$default-branch`: will substitute the branch from the repository, for example `main` and `master`
|
||||||
* `$protected-branches`: will substitue any protected branches from the repository.
|
* `$protected-branches`: will substitute any protected branches from the repository
|
||||||
* `$cron-daily`: will substitute a valid but random time within the day
|
* `$cron-daily`: will substitute a valid but random time within the day
|
||||||
|
|||||||
@@ -15,10 +15,10 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Set up Elixir
|
- name: Set up Elixir
|
||||||
uses: erlef/setup-elixir@885971a72ed1f9240973bd92ab57af8c1aa68f24
|
uses: erlef/setup-beam@988e02bfe678367a02564f65ca2e37726dc0268f
|
||||||
with:
|
with:
|
||||||
elixir-version: '1.10.3' # Define the elixir version [required]
|
elixir-version: '1.12.3' # Define the elixir version [required]
|
||||||
otp-version: '22.3' # Define the OTP version [required]
|
otp-version: '24.1' # Define the OTP version [required]
|
||||||
- name: Restore dependencies cache
|
- name: Restore dependencies cache
|
||||||
uses: actions/cache@v2
|
uses: actions/cache@v2
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
name: Xcode - Build and Analyze
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
name: Build and analyse default scheme using xcodebuild command
|
||||||
|
runs-on: macos-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Set Default Scheme
|
||||||
|
run: |
|
||||||
|
scheme_list=$(xcodebuild -list -json | tr -d "\n")
|
||||||
|
default=$(echo $scheme_list | ruby -e "require 'json'; puts JSON.parse(STDIN.gets)['project']['targets'][0]")
|
||||||
|
echo $default | cat >default
|
||||||
|
echo Using default scheme: $default
|
||||||
|
- name: Build
|
||||||
|
env:
|
||||||
|
scheme: ${{ 'default' }}
|
||||||
|
run: |
|
||||||
|
if [ $scheme = default ]; then scheme=$(cat default); fi
|
||||||
|
if [ "`ls -A | grep -i \\.xcworkspace\$`" ]; then filetype_parameter="workspace" && file_to_build="`ls -A | grep -i \\.xcworkspace\$`"; else filetype_parameter="project" && file_to_build="`ls -A | grep -i \\.xcodeproj\$`"; fi
|
||||||
|
file_to_build=`echo $file_to_build | awk '{$1=$1;print}'`
|
||||||
|
xcodebuild clean build analyze -scheme "$scheme" -"$filetype_parameter" "$file_to_build" | xcpretty && exit ${PIPESTATUS[0]}
|
||||||
@@ -2,5 +2,5 @@
|
|||||||
"name": "Node.js",
|
"name": "Node.js",
|
||||||
"description": "Build and test a Node.js project with npm.",
|
"description": "Build and test a Node.js project with npm.",
|
||||||
"iconName": "nodejs",
|
"iconName": "nodejs",
|
||||||
"categories": ["Continuous integration", "JavaScript", "npm", "React", "Angular"]
|
"categories": ["Continuous integration", "JavaScript", "npm", "React", "Angular", "Vue"]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"name": "Xcode - Build and Analyze",
|
||||||
|
"description": "Build Xcode project using xcodebuild",
|
||||||
|
"iconName": "xcode",
|
||||||
|
"categories": ["Continuous integration", "Xcode", "Objective-C"]
|
||||||
|
}
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "Rails - Build and Run Linters",
|
|
||||||
"description": "Build Rails application and run linters",
|
|
||||||
"iconName": "ruby",
|
|
||||||
"categories": ["Ruby", "Rails"]
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"name": "Super Linter - Run Linters for several languages",
|
||||||
|
"description": "Run linters for several languages on your code base for changed files",
|
||||||
|
"iconName": "octicon check-circle",
|
||||||
|
"categories": ["Continuous integration", "code-quality", "code-review"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"name": "Symfony",
|
||||||
|
"description": "Test a Symfony project.",
|
||||||
|
"iconName": "php",
|
||||||
|
"categories": [
|
||||||
|
"Continuous integration",
|
||||||
|
"PHP",
|
||||||
|
"Symfony"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -4,15 +4,16 @@ on: [push]
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
python-version: ["3.8", "3.9", "3.10"]
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Set up Python 3.9
|
- name: Set up Python ${{ matrix.python-version }}
|
||||||
uses: actions/setup-python@v2
|
uses: actions/setup-python@v2
|
||||||
with:
|
with:
|
||||||
python-version: 3.9
|
python-version: ${{ matrix.python-version }}
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
|
|||||||
@@ -16,10 +16,10 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Set up Python 3.9
|
- name: Set up Python 3.10
|
||||||
uses: actions/setup-python@v2
|
uses: actions/setup-python@v2
|
||||||
with:
|
with:
|
||||||
python-version: 3.9
|
python-version: "3.10"
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
|
|||||||
@@ -10,10 +10,10 @@ jobs:
|
|||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Set up Python 3.8
|
- name: Set up Python 3.10
|
||||||
uses: actions/setup-python@v2
|
uses: actions/setup-python@v2
|
||||||
with:
|
with:
|
||||||
python-version: 3.8
|
python-version: 3.10
|
||||||
- name: Add conda to system path
|
- name: Add conda to system path
|
||||||
run: |
|
run: |
|
||||||
# $CONDA is an environment variable pointing to the root of the miniconda directory
|
# $CONDA is an environment variable pointing to the root of the miniconda directory
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ jobs:
|
|||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
python-version: [3.7, 3.8, 3.9]
|
python-version: ["3.8", "3.9", "3.10"]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|||||||
@@ -19,12 +19,12 @@ jobs:
|
|||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
r-version: [3.5, 3.6]
|
r-version: ['3.6.3', '4.1.1']
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Set up R ${{ matrix.r-version }}
|
- name: Set up R ${{ matrix.r-version }}
|
||||||
uses: r-lib/actions/setup-r@ffe45a39586f073cc2e9af79c4ba563b657dc6e3
|
uses: r-lib/actions/setup-r@f57f1301a053485946083d7a45022b278929a78a
|
||||||
with:
|
with:
|
||||||
r-version: ${{ matrix.r-version }}
|
r-version: ${{ matrix.r-version }}
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
|
|||||||
@@ -1,32 +0,0 @@
|
|||||||
# This workflow uses actions that are not certified by GitHub.
|
|
||||||
# They are provided by a third-party and are governed by
|
|
||||||
# separate terms of service, privacy policy, and support
|
|
||||||
# documentation.
|
|
||||||
# This workflow will download a prebuilt Ruby version, install dependencies, and run linters
|
|
||||||
name: Build Rails and run linters
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [ $default-branch ]
|
|
||||||
pull_request:
|
|
||||||
branches: [ $default-branch ]
|
|
||||||
jobs:
|
|
||||||
run-lint:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Checkout code
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
|
|
||||||
- name: Setup Ruby and install gems
|
|
||||||
uses: ruby/setup-ruby@v1
|
|
||||||
with:
|
|
||||||
bundler-cache: true
|
|
||||||
# Add or Replace any other security checks here
|
|
||||||
- name: Run security checks
|
|
||||||
run: |
|
|
||||||
bin/bundler-audit --update
|
|
||||||
bin/brakeman -q -w2
|
|
||||||
# Add or Replace any other Linters here
|
|
||||||
- name: Run linters
|
|
||||||
run: |
|
|
||||||
bin/rubocop --parallel
|
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
# This workflow executes several linters on changed files based on languages used in your code base whenever
|
||||||
|
# you push a code or open a pull request.
|
||||||
|
#
|
||||||
|
# You can adjust the behavior by modifying this file.
|
||||||
|
# For more information, see:
|
||||||
|
# https://github.com/github/super-linter
|
||||||
|
name: Lint Code Base
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
jobs:
|
||||||
|
run-lint:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
# Full git history is needed to get a proper list of changed files within `super-linter`
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Lint Code Base
|
||||||
|
uses: github/super-linter@v4
|
||||||
|
env:
|
||||||
|
VALIDATE_ALL_CODEBASE: false
|
||||||
|
DEFAULT_BRANCH: $default-branch
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
name: Symfony
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
symfony-tests:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
# To automatically get bug fixes and new Php versions for shivammathur/setup-php,
|
||||||
|
# change this to (see https://github.com/shivammathur/setup-php#bookmark-versioning):
|
||||||
|
# uses: shivammathur/setup-php@v2
|
||||||
|
- uses: shivammathur/setup-php@2cb9b829437ee246e9b3cac53555a39208ca6d28
|
||||||
|
with:
|
||||||
|
php-version: '8.0'
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Copy .env.test.local
|
||||||
|
run: php -r "file_exists('.env.test.local') || copy('.env.test', '.env.test.local');"
|
||||||
|
- name: Cache Composer packages
|
||||||
|
id: composer-cache
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: vendor
|
||||||
|
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
|
||||||
|
restore-keys: |
|
||||||
|
${{ runner.os }}-php-
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
|
||||||
|
- name: Create Database
|
||||||
|
run: |
|
||||||
|
mkdir -p data
|
||||||
|
touch data/database.sqlite
|
||||||
|
- name: Execute tests (Unit and Feature tests) via PHPUnit
|
||||||
|
env:
|
||||||
|
DATABASE_URL: sqlite:///%kernel.project_dir%/data/database.sqlite
|
||||||
|
run: vendor/bin/phpunit
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow checks out code, builds an image, performs a container image
|
||||||
|
# vulnerability scan with Anchore's Grype tool, and integrates the results with GitHub Advanced Security
|
||||||
|
# code scanning feature. For more information on the Anchore scan action usage
|
||||||
|
# and parameters, see https://github.com/anchore/scan-action. For more
|
||||||
|
# information on Anchore's container image scanning tool Grype, see
|
||||||
|
# https://github.com/anchore/grype
|
||||||
|
name: Anchore Container Scan
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
Anchore-Build-Scan:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout the code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Build the Docker image
|
||||||
|
run: docker build . --file Dockerfile --tag localbuild/testimage:latest
|
||||||
|
- name: Run the Anchore scan action itself with GitHub Advanced Security code scanning integration enabled
|
||||||
|
uses: anchore/scan-action@b08527d5ae7f7dc76f9621edb6e49eaf47933ccd
|
||||||
|
with:
|
||||||
|
image: "localbuild/testimage:latest"
|
||||||
|
acs-report-enable: true
|
||||||
|
- name: Upload Anchore Scan Report
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: results.sarif
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow integrates Brakeman with GitHub's Code Scanning feature
|
||||||
|
# Brakeman is a static analysis security vulnerability scanner for Ruby on Rails applications
|
||||||
|
|
||||||
|
name: Brakeman Scan
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
brakeman-scan:
|
||||||
|
name: Brakeman Scan
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
# Checkout the repository to the GitHub Actions runner
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Customize the ruby version depending on your needs
|
||||||
|
- name: Setup Ruby
|
||||||
|
uses: ruby/setup-ruby@f20f1eae726df008313d2e0d78c5e602562a1bcf
|
||||||
|
with:
|
||||||
|
ruby-version: '2.7'
|
||||||
|
|
||||||
|
- name: Setup Brakeman
|
||||||
|
env:
|
||||||
|
BRAKEMAN_VERSION: '4.10' # SARIF support is provided in Brakeman version 4.10+
|
||||||
|
run: |
|
||||||
|
gem install brakeman --version $BRAKEMAN_VERSION
|
||||||
|
|
||||||
|
# Execute Brakeman CLI and generate a SARIF output with the security issues identified during the analysis
|
||||||
|
- name: Scan
|
||||||
|
continue-on-error: true
|
||||||
|
run: |
|
||||||
|
brakeman -f sarif -o output.sarif.json .
|
||||||
|
|
||||||
|
# Upload the SARIF file generated in the previous step
|
||||||
|
- name: Upload SARIF
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: output.sarif.json
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This is a basic workflow to help you get started with Using Checkmarx CxFlow Action
|
||||||
|
|
||||||
|
name: CxFlow
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
# A workflow run is made up of one or more jobs that can run sequentially or in parallel - this job is specifically configured to use the Checkmarx CxFlow Action
|
||||||
|
jobs:
|
||||||
|
# This workflow contains a single job called "build"
|
||||||
|
build:
|
||||||
|
# The type of runner that the job will run on - Ubuntu is required as Docker is leveraged for the action
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
# Steps require - checkout code, run CxFlow Action, Upload SARIF report (optional)
|
||||||
|
steps:
|
||||||
|
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
# Runs the Checkmarx Scan leveraging the latest version of CxFlow - REFER to Action README for list of inputs
|
||||||
|
- name: Checkmarx CxFlow Action
|
||||||
|
uses: checkmarx-ts/checkmarx-cxflow-github-action@04e6403dbbfee0fd3fb076e5791202c31c54fe6b
|
||||||
|
with:
|
||||||
|
project: GithubActionTest
|
||||||
|
team: '\CxServer\SP\Checkmarx'
|
||||||
|
checkmarx_url: ${{ secrets.CHECKMARX_URL }}
|
||||||
|
checkmarx_username: ${{ secrets.CHECKMARX_USERNAME }}
|
||||||
|
checkmarx_password: ${{ secrets.CHECKMARX_PASSWORD }}
|
||||||
|
checkmarx_client_secret: ${{ secrets.CHECKMARX_CLIENT_SECRET }}
|
||||||
|
# Upload the Report for CodeQL/Security Alerts
|
||||||
|
- name: Upload SARIF file
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: cx.sarif
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
name: Cloudrail
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
cloudrail:
|
||||||
|
name: Run Indeni Cloudrail on Terraform code with SARIF output
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
actions: read
|
||||||
|
contents: read
|
||||||
|
security-events: write
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Clone repo
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# For Terraform, Cloudrail requires the plan as input. So we generate it using
|
||||||
|
# the Terraform core binary.
|
||||||
|
- uses: hashicorp/setup-terraform@v1
|
||||||
|
with:
|
||||||
|
terraform_version: v0.13.2
|
||||||
|
|
||||||
|
- run: terraform init
|
||||||
|
|
||||||
|
- run: terraform plan -out=plan.out
|
||||||
|
env:
|
||||||
|
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||||
|
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||||
|
|
||||||
|
# Confirm we have the plan file
|
||||||
|
- run: stat plan.out
|
||||||
|
|
||||||
|
- name: Run Cloudrail
|
||||||
|
uses: indeni/cloudrail-run-ga@b56ed2d30913c975b36df231adc2eabf05523622
|
||||||
|
with:
|
||||||
|
tf-plan-file: plan.out # This was created in a "terraform plan" step
|
||||||
|
cloudrail-api-key: ${{ secrets.CLOUDRAIL_API_KEY }} # This requires registration to Indeni Cloudrail's SaaS at https://web.cloudrail.app
|
||||||
|
cloud-account-id: # Leave this empty for Static Analaysis, or provide an account ID for Dynamic Analysis, see instructions in Cloudrail SaaS
|
||||||
|
|
||||||
|
- name: Upload SARIF file
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
# Remember that if issues are found, Cloudrail return non-zero exit code, so the if: always()
|
||||||
|
# is needed to ensure the SARIF file is uploaded
|
||||||
|
if: always()
|
||||||
|
with:
|
||||||
|
sarif_file: cloudrail_results.sarif
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow checks out code, performs a Codacy security scan
|
||||||
|
# and integrates the results with the
|
||||||
|
# GitHub Advanced Security code scanning feature. For more information on
|
||||||
|
# the Codacy security scan action usage and parameters, see
|
||||||
|
# https://github.com/codacy/codacy-analysis-cli-action.
|
||||||
|
# For more information on Codacy Analysis CLI in general, see
|
||||||
|
# https://github.com/codacy/codacy-analysis-cli.
|
||||||
|
|
||||||
|
name: Codacy Security Scan
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
codacy-security-scan:
|
||||||
|
name: Codacy Security Scan
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
# Checkout the repository to the GitHub Actions runner
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Execute Codacy Analysis CLI and generate a SARIF output with the security issues identified during the analysis
|
||||||
|
- name: Run Codacy Analysis CLI
|
||||||
|
uses: codacy/codacy-analysis-cli-action@d840f886c4bd4edc059706d09c6a1586111c540b
|
||||||
|
with:
|
||||||
|
# Check https://github.com/codacy/codacy-analysis-cli#project-token to get your project token from your Codacy repository
|
||||||
|
# You can also omit the token and run the tools that support default configurations
|
||||||
|
project-token: ${{ secrets.CODACY_PROJECT_TOKEN }}
|
||||||
|
verbose: true
|
||||||
|
output: results.sarif
|
||||||
|
format: sarif
|
||||||
|
# Adjust severity of non-security issues
|
||||||
|
gh-code-scanning-compat: true
|
||||||
|
# Force 0 exit code to allow SARIF file generation
|
||||||
|
# This will handover control about PR rejection to the GitHub side
|
||||||
|
max-allowed-issues: 2147483647
|
||||||
|
|
||||||
|
# Upload the SARIF file generated in the previous step
|
||||||
|
- name: Upload SARIF results file
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: results.sarif
|
||||||
@@ -34,8 +34,7 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
language: [ $detected-codeql-languages ]
|
language: [ $detected-codeql-languages ]
|
||||||
# CodeQL supports [ $supported-codeql-languages ]
|
# CodeQL supports [ $supported-codeql-languages ]
|
||||||
# Learn more:
|
# Learn more about CodeQL language support at https://git.io/codeql-language-support
|
||||||
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
|
|||||||
@@ -0,0 +1,42 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow requires that you have an existing account with codescan.io
|
||||||
|
# For more information about configuring your workflow,
|
||||||
|
# read our documentation at https://github.com/codescan-io/codescan-scanner-action
|
||||||
|
name: CodeScan
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
CodeScan:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Cache files
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
~/.sonar
|
||||||
|
key: ${{ runner.os }}-sonar
|
||||||
|
restore-keys: ${{ runner.os }}-sonar
|
||||||
|
- name: Run Analysis
|
||||||
|
uses: codescan-io/codescan-scanner-action@5b2e8c5683ef6a5adc8fa3b7950bb07debccce12
|
||||||
|
with:
|
||||||
|
login: ${{ secrets.CODESCAN_AUTH_TOKEN }}
|
||||||
|
organization: ${{ secrets.CODESCAN_ORGANIZATION_KEY }}
|
||||||
|
projectKey: ${{ secrets.CODESCAN_PROJECT_KEY }}
|
||||||
|
- name: Upload SARIF file
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: codescan.sarif
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow locates REST API file contracts
|
||||||
|
# (Swagger or OpenAPI format, v2 and v3, JSON and YAML)
|
||||||
|
# and runs 200+ security checks on them using 42Crunch Security Audit technology.
|
||||||
|
#
|
||||||
|
# Documentation is located here: https://docs.42crunch.com/latest/content/tasks/integrate_github_actions.htm
|
||||||
|
#
|
||||||
|
# To use this workflow, you will need to complete the following setup steps.
|
||||||
|
#
|
||||||
|
# 1. Create a free 42Crunch account at https://platform.42crunch.com/register
|
||||||
|
#
|
||||||
|
# 2. Follow steps at https://docs.42crunch.com/latest/content/tasks/integrate_github_actions.htm
|
||||||
|
# to create an API Token on the 42Crunch platform
|
||||||
|
#
|
||||||
|
# 3. Add a secret in GitHub as explained in https://docs.42crunch.com/latest/content/tasks/integrate_github_actions.htm,
|
||||||
|
# store the 42Crunch API Token in that secret, and supply the secret's name as api-token parameter in this workflow
|
||||||
|
#
|
||||||
|
# If you have any questions or need help contact https://support.42crunch.com
|
||||||
|
|
||||||
|
name: "42Crunch REST API Static Security Testing"
|
||||||
|
|
||||||
|
# follow standard Code Scanning triggers
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
rest-api-static-security-testing:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: 42Crunch REST API Static Security Testing
|
||||||
|
uses: 42Crunch/api-security-audit-action@96228d9c48873fe001354047d47fb62be42abeb1
|
||||||
|
with:
|
||||||
|
# Please create free account at https://platform.42crunch.com/register
|
||||||
|
# Follow these steps to configure API_TOKEN https://docs.42crunch.com/latest/content/tasks/integrate_github_actions.htm
|
||||||
|
api-token: ${{ secrets.API_TOKEN }}
|
||||||
|
# Fail if any OpenAPI file scores lower than 75
|
||||||
|
min-score: 75
|
||||||
|
# Upload results to Github code scanning
|
||||||
|
upload-to-code-scanning: true
|
||||||
|
# Github token for uploading the results
|
||||||
|
github-token: ${{ github.token }}
|
||||||
@@ -0,0 +1,97 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
################################################################################################################################################
|
||||||
|
# Fortify lets you build secure software fast with an appsec platform that automates testing throughout the DevSecOps pipeline. Fortify static,#
|
||||||
|
# dynamic, interactive, and runtime security testing is available on premises or as a service. To learn more about Fortify, start a free trial #
|
||||||
|
# or contact our sales team, visit microfocus.com/appsecurity. #
|
||||||
|
# #
|
||||||
|
# Use this workflow template as a basis for integrating Fortify on Demand Static Application Security Testing(SAST) into your GitHub workflows.#
|
||||||
|
# This template demonstrates the steps to prepare the code+dependencies, initiate a scan, download results once complete and import into #
|
||||||
|
# GitHub Security Code Scanning Alerts. Existing customers should review inputs and environment variables below to configure scanning against #
|
||||||
|
# an existing application in your Fortify on Demand tenant. Additional information is available in the comments throughout the workflow, the #
|
||||||
|
# documentation for the Fortify actions used, and the Fortify on Demand / ScanCentral Client product documentation. If you need additional #
|
||||||
|
# assistance with configuration, feel free to create a help ticket in the Fortify on Demand portal. #
|
||||||
|
################################################################################################################################################
|
||||||
|
|
||||||
|
name: Fortify on Demand Scan
|
||||||
|
|
||||||
|
# TODO: Customize trigger events based on your DevSecOps processes and typical FoD SAST scan time
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
FoD-SAST-Scan:
|
||||||
|
# Use the appropriate runner for building your source code.
|
||||||
|
# TODO: Use a Windows runner for .NET projects that use msbuild. Additional changes to RUN commands will be required to switch to Windows syntax.
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
actions: read
|
||||||
|
contents: read
|
||||||
|
security-events: write
|
||||||
|
|
||||||
|
steps:
|
||||||
|
# Check out source code
|
||||||
|
- name: Check Out Source Code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Java is required to run the various Fortify utilities.
|
||||||
|
# When scanning a Java application, please use the appropriate Java version for building your application.
|
||||||
|
- name: Setup Java
|
||||||
|
uses: actions/setup-java@v1
|
||||||
|
with:
|
||||||
|
java-version: 1.8
|
||||||
|
|
||||||
|
# Prepare source+dependencies for upload. The default example is for a Maven project that uses pom.xml.
|
||||||
|
# TODO: Update PACKAGE_OPTS based on the ScanCentral Client documentation for your project's included tech stack(s). Helpful hints:
|
||||||
|
# ScanCentral Client will download dependencies for maven (-bt mvn) and gradle (-bt gradle).
|
||||||
|
# ScanCentral Client can download dependencies for msbuild projects (-bt msbuild); however, you must convert the workflow to use a Windows runner.
|
||||||
|
# ScanCentral has additional options that should be set for PHP and Python projects
|
||||||
|
# For other build tools, add your build commands to download necessary dependencies and prepare according to Fortify on Demand Packaging documentation.
|
||||||
|
# ScanCentral Client documentation is located at https://www.microfocus.com/documentation/fortify-software-security-center/
|
||||||
|
- name: Download Fortify ScanCentral Client
|
||||||
|
uses: fortify/gha-setup-scancentral-client@5b7382f8234fb9840958c49d5f32ae854115f9f3
|
||||||
|
- name: Package Code + Dependencies
|
||||||
|
run: scancentral package $PACKAGE_OPTS -o package.zip
|
||||||
|
env:
|
||||||
|
PACKAGE_OPTS: "-bt mvn"
|
||||||
|
|
||||||
|
# Start Fortify on Demand SAST scan and wait until results complete. For more information on FoDUploader commands, see https://github.com/fod-dev/fod-uploader-java
|
||||||
|
# TODO: Update ENV variables for your application and create the necessary GitHub Secrets. Helpful hints:
|
||||||
|
# Credentials and release ID should be obtained from your FoD tenant (either Personal Access Token or API Key can be used).
|
||||||
|
# Automated Audit preference should be configured for the release's Static Scan Settings in the Fortify on Demand portal.
|
||||||
|
- name: Download Fortify on Demand Universal CI Tool
|
||||||
|
uses: fortify/gha-setup-fod-uploader@6e6bb8a33cb476e240929fa8ebc739ff110e7433
|
||||||
|
- name: Perform SAST Scan
|
||||||
|
run: java -jar $FOD_UPLOAD_JAR -z package.zip -aurl $FOD_API_URL -purl $FOD_URL -rid "$FOD_RELEASE_ID" -tc "$FOD_TENANT" -uc "$FOD_USER" "$FOD_PAT" $FOD_UPLOADER_OPTS -n "$FOD_UPLOADER_NOTES"
|
||||||
|
env:
|
||||||
|
FOD_URL: "https://ams.fortify.com/"
|
||||||
|
FOD_API_URL: "https://api.ams.fortify.com/"
|
||||||
|
FOD_TENANT: ${{ secrets.FOD_TENANT }}
|
||||||
|
FOD_USER: ${{ secrets.FOD_USER }}
|
||||||
|
FOD_PAT: ${{ secrets.FOD_PAT }}
|
||||||
|
FOD_RELEASE_ID: ${{ secrets.FOD_RELEASE_ID }}
|
||||||
|
FOD_UPLOADER_OPTS: "-ep 2 -pp 0 -I 1 -apf"
|
||||||
|
FOD_UPLOADER_NOTES: 'Triggered by GitHub Actions (${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})'
|
||||||
|
|
||||||
|
# Once scan completes, pull SAST issues from Fortify on Demand and generate SARIF output.
|
||||||
|
- name: Export results to GitHub-optimized SARIF
|
||||||
|
uses: fortify/gha-export-vulnerabilities@fcb374411cff9809028c911dabb8b57dbdae623b
|
||||||
|
with:
|
||||||
|
fod_base_url: "https://ams.fortify.com/"
|
||||||
|
fod_tenant: ${{ secrets.FOD_TENANT }}
|
||||||
|
fod_user: ${{ secrets.FOD_USER }}
|
||||||
|
fod_password: ${{ secrets.FOD_PAT }}
|
||||||
|
fod_release_id: ${{ secrets.FOD_RELEASE_ID }}
|
||||||
|
|
||||||
|
# Import Fortify on Demand results to GitHub Security Code Scanning
|
||||||
|
- name: Import Results
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: ./gh-fortify-sast.sarif
|
||||||
@@ -10,7 +10,7 @@
|
|||||||
# To use this workflow, you will need to:
|
# To use this workflow, you will need to:
|
||||||
#
|
#
|
||||||
# 1. Create a Mayhem for API account at
|
# 1. Create a Mayhem for API account at
|
||||||
# https://mayhem4api.forallsecure.com/signup (30-day free trial)
|
# https://mayhem4api.forallsecure.com/signup
|
||||||
#
|
#
|
||||||
# 2. Create a service account token `mapi organization service-account create
|
# 2. Create a service account token `mapi organization service-account create
|
||||||
# <org-name> <service-account-name>`
|
# <org-name> <service-account-name>`
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
name: MobSF
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
mobile-security:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Setup python
|
||||||
|
uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: 3.8
|
||||||
|
|
||||||
|
- name: Run mobsfscan
|
||||||
|
uses: MobSF/mobsfscan@a60d10a83af68e23e0b30611c6515da604f06f65
|
||||||
|
with:
|
||||||
|
args: . --sarif --output results.sarif || true
|
||||||
|
|
||||||
|
- name: Upload mobsfscan report
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: results.sarif
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
#
|
||||||
|
# Find more information at:
|
||||||
|
# https://github.com/microsoft/msvc-code-analysis-action
|
||||||
|
|
||||||
|
name: Microsoft C++ Code Analysis
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
env:
|
||||||
|
# Path to the CMake build directory.
|
||||||
|
build: '${{ github.workspace }}/build'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
analyze:
|
||||||
|
name: Analyze
|
||||||
|
runs-on: windows-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Configure CMake
|
||||||
|
run: cmake -B ${{ env.build }}
|
||||||
|
|
||||||
|
# Build is not required unless generated source files are used
|
||||||
|
# - name: Build CMake
|
||||||
|
# run: cmake --build ${{ env.build }}
|
||||||
|
|
||||||
|
- name: Initialize MSVC Code Analysis
|
||||||
|
uses: microsoft/msvc-code-analysis-action@04825f6d9e00f87422d6bf04e1a38b1f3ed60d99
|
||||||
|
# Provide a unique ID to access the sarif output path
|
||||||
|
id: run-analysis
|
||||||
|
with:
|
||||||
|
cmakeBuildDirectory: ${{ env.build }}
|
||||||
|
# Ruleset file that will determine what checks will be run
|
||||||
|
ruleset: NativeRecommendedRules.ruleset
|
||||||
|
|
||||||
|
# Upload SARIF file to GitHub Code Scanning Alerts
|
||||||
|
- name: Upload SARIF to GitHub
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: ${{ steps.run-analysis.outputs.sarif }}
|
||||||
|
|
||||||
|
# Upload SARIF file as an Artifact to download and view
|
||||||
|
# - name: Upload SARIF as an Artifact
|
||||||
|
# uses: actions/upload-artifact@v2
|
||||||
|
# with:
|
||||||
|
# name: sarif-file
|
||||||
|
# path: ${{ steps.run-analysis.outputs.sarif }}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow integrates njsscan with GitHub's Code Scanning feature
|
||||||
|
# nodejsscan is a static security code scanner that finds insecure code patterns in your Node.js applications
|
||||||
|
|
||||||
|
name: njsscan sarif
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
njsscan:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: njsscan code scanning
|
||||||
|
steps:
|
||||||
|
- name: Checkout the code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: nodejsscan scan
|
||||||
|
id: njsscan
|
||||||
|
uses: ajinabraham/njsscan-action@7237412fdd36af517e2745077cedbf9d6900d711
|
||||||
|
with:
|
||||||
|
args: '. --sarif --output results.sarif || true'
|
||||||
|
- name: Upload njsscan report
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: results.sarif
|
||||||
@@ -0,0 +1,52 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
#
|
||||||
|
# NowSecure: The Mobile Security Experts <https://www.nowsecure.com/>.
|
||||||
|
#
|
||||||
|
# To use this workflow, you must be an existing NowSecure customer with GitHub Advanced Security (GHAS) enabled for your
|
||||||
|
# repository.
|
||||||
|
#
|
||||||
|
# If you *are not* an existing customer, click here to contact us for licensing and pricing details:
|
||||||
|
# <https://info.nowsecure.com/github-request>.
|
||||||
|
#
|
||||||
|
# Instructions:
|
||||||
|
#
|
||||||
|
# 1. In the settings for your repository, click "Secrets" then "New repository secret". Name the secret "NS_TOKEN" and
|
||||||
|
# paste in your Platform token. If you do not have a Platform token, or wish to create a new one for GitHub, visit
|
||||||
|
# NowSecure Platform and go to "Profile & Preferences" then create a token labelled "GitHub".
|
||||||
|
#
|
||||||
|
# 2. Follow the annotated workflow below and make any necessary modifications then save the workflow to your repository
|
||||||
|
# and review the "Security" tab once the action has run.
|
||||||
|
|
||||||
|
name: "NowSecure"
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
nowsecure:
|
||||||
|
name: NowSecure
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Build your application
|
||||||
|
run: ./gradlew assembleDebug # Update this to build your Android or iOS application
|
||||||
|
|
||||||
|
- name: Run NowSecure
|
||||||
|
uses: nowsecure/nowsecure-action@3b439db31b6dce857b09f5222fd13ffc3159ad26
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.NS_TOKEN }}
|
||||||
|
app_file: app-debug.apk # Update this to a path to your .ipa or .apk
|
||||||
|
group_id: {{ groupId }} # Update this to your desired Platform group ID
|
||||||
|
|
||||||
|
- name: Upload SARIF file
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: NowSecure.sarif
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow integrates a collection of open source static analysis tools
|
||||||
|
# with GitHub code scanning. For documentation, or to provide feedback, visit
|
||||||
|
# https://github.com/github/ossar-action
|
||||||
|
name: OSSAR
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
OSSAR-Scan:
|
||||||
|
# OSSAR runs on windows-latest.
|
||||||
|
# ubuntu-latest and macos-latest support coming soon
|
||||||
|
runs-on: windows-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Ensure a compatible version of dotnet is installed.
|
||||||
|
# The [Microsoft Security Code Analysis CLI](https://aka.ms/mscadocs) is built with dotnet v3.1.201.
|
||||||
|
# A version greater than or equal to v3.1.201 of dotnet must be installed on the agent in order to run this action.
|
||||||
|
# GitHub hosted runners already have a compatible version of dotnet installed and this step may be skipped.
|
||||||
|
# For self-hosted runners, ensure dotnet version 3.1.201 or later is installed by including this action:
|
||||||
|
# - name: Install .NET
|
||||||
|
# uses: actions/setup-dotnet@v1
|
||||||
|
# with:
|
||||||
|
# dotnet-version: '3.1.x'
|
||||||
|
|
||||||
|
# Run open source static analysis tools
|
||||||
|
- name: Run OSSAR
|
||||||
|
uses: github/ossar-action@v1
|
||||||
|
id: ossar
|
||||||
|
|
||||||
|
# Upload results to the Security tab
|
||||||
|
- name: Upload OSSAR results
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: ${{ steps.ossar.outputs.sarifFile }}
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# A sample workflow that checks for security issues using
|
||||||
|
# the Prisma Cloud Infrastructure as Code Scan Action on
|
||||||
|
# the IaC files present in the repository.
|
||||||
|
# The results are uploaded to GitHub Security Code Scanning
|
||||||
|
#
|
||||||
|
# For more details on the Action configuration see https://github.com/prisma-cloud-shiftleft/iac-scan-action
|
||||||
|
|
||||||
|
name: Prisma Cloud IaC Scan
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
prisma_cloud_iac_scan:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: Run Prisma Cloud IaC Scan to check
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- id: iac-scan
|
||||||
|
name: Run Scan on CFT files in the repository
|
||||||
|
uses: prisma-cloud-shiftleft/iac-scan-action@53278c231c438216d99b463308a3cbed351ba0c3
|
||||||
|
with:
|
||||||
|
# You will need Prisma Cloud API Access Token
|
||||||
|
# More details in https://github.com/prisma-cloud-shiftleft/iac-scan-action
|
||||||
|
prisma_api_url: ${{ secrets.PRISMA_CLOUD_API_URL }}
|
||||||
|
access_key: ${{ secrets.PRISMA_CLOUD_ACCESS_KEY }}
|
||||||
|
secret_key: ${{ secrets.PRISMA_CLOUD_SECRET_KEY }}
|
||||||
|
# Scan sources on Prisma Cloud are uniquely identified by their name
|
||||||
|
asset_name: 'my-asset-name'
|
||||||
|
# The service need to know the type of IaC being scanned
|
||||||
|
template_type: 'CFT'
|
||||||
|
- name: Upload SARIF file
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
# Results are generated only on a success or failure
|
||||||
|
# this is required since GitHub by default won't run the next step
|
||||||
|
# when the previous one has failed.
|
||||||
|
# And alternative it to add `continue-on-error: true` to the previous step
|
||||||
|
if: success() || failure()
|
||||||
|
with:
|
||||||
|
# The SARIF Log file name is configurable on scan action
|
||||||
|
# therefore the file name is best read from the steps output
|
||||||
|
sarif_file: ${{ steps.iac-scan.outputs.iac_scan_result_sarif_path }}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Anchore Container Scan",
|
||||||
|
"creator": "Indeni Cloudrail",
|
||||||
|
"description": "Produce container image vulnerability and compliance reports based on the open-source Anchore container image scanner.",
|
||||||
|
"iconName": "anchore",
|
||||||
|
"categories": ["Code Scanning", "dockerfile"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Brakeman",
|
||||||
|
"creator": "Brakeman",
|
||||||
|
"description": "Brakeman is a static analysis security vulnerability scanner for Ruby on Rails applications.",
|
||||||
|
"iconName": "brakeman",
|
||||||
|
"categories": ["Code Scanning", "ruby"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "CxSAST",
|
||||||
|
"creator": "Checkmarx",
|
||||||
|
"description": "Scan your code with Checkmarx CxSAST and see your results in the GitHub security tab.",
|
||||||
|
"iconName": "checkmarx",
|
||||||
|
"categories": ["Code Scanning", "javascript", "python", "java", "php", "c#", "c", "c++", "ruby", "swift", "go", "json", "kotlin", "apex", "scala", "perl"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "cloudrail",
|
||||||
|
"creator": "Indeni Cloudrail",
|
||||||
|
"description": "Cloudrail can be used to scan your infrastructure-as-code files for potential security and compliance issues. The Cloudrail action is often used as part of both CI workflows (on pull_request) and on CD workflows to identify potential issues.",
|
||||||
|
"iconName": "cloudrail",
|
||||||
|
"categories": ["Code Scanning", "HCL"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Codacy Security Scan",
|
||||||
|
"creator": "Codacy",
|
||||||
|
"description": "Free, out-of-the-box, security analysis provided by multiple open source static analysis tools.",
|
||||||
|
"iconName": "codacy",
|
||||||
|
"categories": ["Code Scanning", "apex", "bash", "c", "coffeescript", "c++", "c#", "crystal", "dockerfile", "elixir", "go", "groovy", "java", "javascript", "jsp", "kotlin", "markdown", "php", "plsql", "powershell", "python", "ruby", "scala", "swift", "tsql", "typescript", "velocity", "vba", "xml"]
|
||||||
|
}
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "CodeQL Analysis",
|
"name": "CodeQL Analysis",
|
||||||
"creator": "GitHub",
|
"creator": "GitHub",
|
||||||
"description": "Security analysis from GitHub for C, C++, C#, Java, JavaScript, TypeScript, Python, and Go developers.",
|
"description": "Security analysis from GitHub for C, C++, C#, Go, Java, JavaScript, TypeScript, Python, and Ruby developers.",
|
||||||
"iconName": "octicon mark-github",
|
"iconName": "octicon mark-github",
|
||||||
"categories": ["Code Scanning", "C", "C#", "C++", "Go", "Java", "JavaScript", "TypeScript", "Python"]
|
"categories": ["Code Scanning", "C", "C++", "C#", "Go", "Java", "JavaScript", "TypeScript", "Python", "Ruby"]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "CodeScan",
|
||||||
|
"creator": "CodeScan Enterprises, LLC",
|
||||||
|
"description": "CodeScan allows for better visibility on your code quality checks based on your custom rulesets.",
|
||||||
|
"iconName": "codescan",
|
||||||
|
"categories": ["Code Scanning", "javascript", "apex"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "42Crunch API Security Audit",
|
||||||
|
"creator": "42Crunch",
|
||||||
|
"description": "Use the 42Crunch API Security Audit REST API to perform static application security testing (SAST) on OpenAPI/Swagger files.",
|
||||||
|
"iconName": "42crunch",
|
||||||
|
"categories": ["Code Scanning"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Fortify on Demand Scan",
|
||||||
|
"creator": "Micro Focus",
|
||||||
|
"description": "Integrate Fortify's comprehensive static code analysis (SAST) for 27+ languages into your DevSecOps workflows to build secure software faster.",
|
||||||
|
"iconName": "fortify",
|
||||||
|
"categories": ["Code Scanning", "ABAP", "ActionScript", "Apex", "C#", "C", "C++", "COBOL", "ColdFusion", "Dockerfile", "Go", "HTML", "Java", "JavaScript", "JSON", "Java Server Pages", "Kotlin", "MXML", "Objective-C", "Objective-C++", "PHP", "PLSQL", "Python", "Ruby", "Scala", "Swift", "TSQL", "TypeScript", "VBScript", "Visual Basic .NET", "Visual Basic", "XML"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"name": "mobsf",
|
||||||
|
"creator": "mobsf",
|
||||||
|
"description": "Mobile Security Framework (MobSF) is an automated, all-in-one mobile application (Android/iOS/Windows) pen-testing, malware analysis and security assessment framework capable of performing static and dynamic analysis.",
|
||||||
|
"iconName": "mobsf",
|
||||||
|
"categories": [
|
||||||
|
"Code Scanning",
|
||||||
|
"Java",
|
||||||
|
"Swift",
|
||||||
|
"Objective-C",
|
||||||
|
"Kotlin"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Microsoft C++ Code Analysis",
|
||||||
|
"creator": "Microsoft",
|
||||||
|
"description": "Code Analysis with the Microsoft C & C++ Compiler for CMake based projects.",
|
||||||
|
"iconName": "microsoft",
|
||||||
|
"categories": ["Code Scanning", "C", "C++"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "njsscan",
|
||||||
|
"creator": "NodeJSScan",
|
||||||
|
"description": "nodejsscan is a static security code scanner that finds insecure code patterns in your Node.js applications.",
|
||||||
|
"iconName": "njsscan",
|
||||||
|
"categories": ["Code Scanning", "JavaScript", "TypeScript"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"name": "NowSecure",
|
||||||
|
"creator": "NowSecure",
|
||||||
|
"description": "The NowSecure Action delivers fast, accurate, automated security analysis of iOS and Android apps coded in any language",
|
||||||
|
"iconName": "nowsecure",
|
||||||
|
"categories": [
|
||||||
|
"Code Scanning",
|
||||||
|
"Java",
|
||||||
|
"Kotlin",
|
||||||
|
"Scala",
|
||||||
|
"Swift",
|
||||||
|
"Objective C",
|
||||||
|
"C",
|
||||||
|
"C++",
|
||||||
|
"C#",
|
||||||
|
"Rust",
|
||||||
|
"JavaScript",
|
||||||
|
"TypeScript",
|
||||||
|
"Node"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "OSSAR",
|
||||||
|
"creator": "GitHub",
|
||||||
|
"description": "Run multiple open source security static analysis tools without the added complexity with OSSAR (Open Source Static Analysis Runner).",
|
||||||
|
"iconName": "octicon mark-github",
|
||||||
|
"categories": ["Code Scanning", "python", "javascript"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Prisma Cloud IaC Scan",
|
||||||
|
"creator": "Palo Alto Prisma Cloud",
|
||||||
|
"description": "Scan your Infrastructure as Code files with Prisma Cloud to detect security issues",
|
||||||
|
"iconName": "prisma",
|
||||||
|
"categories": ["Code Scanning"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "RuboCop Linting",
|
||||||
|
"creator": "arthurnn",
|
||||||
|
"description": "A Ruby static code analyzer and formatter, based on the community Ruby style guide.",
|
||||||
|
"iconName": "rubocop",
|
||||||
|
"categories": ["Code Scanning", "ruby"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "SecurityCodeScan",
|
||||||
|
"creator": "@security-code-scan",
|
||||||
|
"description": "Vulnerability Patterns Detector for C# and VB.NET",
|
||||||
|
"iconName": "securitycodescan",
|
||||||
|
"categories": ["Code Scanning", "C#", "Visual Basic .NET"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Semgrep",
|
||||||
|
"creator": "Returntocorp",
|
||||||
|
"description": "Continuously run Semgrep to find bugs and enforce secure code standards. Start with 1k+ community rules or write your own in a few minutes.",
|
||||||
|
"iconName": "semgrep",
|
||||||
|
"categories": ["Code Scanning", "Go", "Java", "JavaScript", "JSON", "Python", "Ruby", "TypeScript", "JSX", "TSX"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Scan",
|
||||||
|
"creator": "ShiftLeft",
|
||||||
|
"description": "Scan is a free open-source security tool for modern DevOps teams from ShiftLeft.",
|
||||||
|
"iconName": "shiftleft",
|
||||||
|
"categories": ["Code Scanning"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Snyk Container",
|
||||||
|
"creator": "Snyk",
|
||||||
|
"description": "Detect vulnerabilities in your container images and surface the issues in GitHub code scanning.",
|
||||||
|
"iconName": "snyk",
|
||||||
|
"categories": ["Code Scanning", "dockerfile"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Snyk Infrastructure as Code",
|
||||||
|
"creator": "Snyk",
|
||||||
|
"description": "Detect vulnerabilities in your infrastructure as code files and surface the issues in GitHub code scanning.",
|
||||||
|
"iconName": "snyk",
|
||||||
|
"categories": ["Code Scanning"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Sysdig Inline Scan",
|
||||||
|
"creator": "Sysdig",
|
||||||
|
"description": "Performs analysis on locally built container image and posts the results in SARIF report",
|
||||||
|
"iconName": "sysdig-scan",
|
||||||
|
"categories": ["Code Scanning", "Dockerfile", "C", "C#", "C++", "Go", "Java", "JavaScript", "Node", "Python", "Powershell", "Ruby"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"name": "Trivy",
|
||||||
|
"creator": "Aqua Security",
|
||||||
|
"description": "Scan Docker container images for vulnerabilities in OS packages and language dependencies with Trivy from Aqua Security.",
|
||||||
|
"iconName": "trivy",
|
||||||
|
"categories": ["Code Scanning", "dockerfile"],
|
||||||
|
"enterprise_requirements": ["docker"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"name": "Xanitizer",
|
||||||
|
"creator": "RIGS IT",
|
||||||
|
"description": "Automatically scan your code for vulnerabilities and generate compliance reports with the static security analysis tool Xanitizer (SAST).",
|
||||||
|
"iconName": "xanitizer",
|
||||||
|
"categories": ["Code Scanning", "javascript", "java", "scala", "typescript", "xml", "json"]
|
||||||
|
}
|
||||||
@@ -0,0 +1,52 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# pulled from repo
|
||||||
|
name: "Rubocop"
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
rubocop:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# If running on a self-hosted runner, check it meets the requirements
|
||||||
|
# listed at https://github.com/ruby/setup-ruby#using-self-hosted-runners
|
||||||
|
- name: Set up Ruby
|
||||||
|
uses: ruby/setup-ruby@f20f1eae726df008313d2e0d78c5e602562a1bcf
|
||||||
|
with:
|
||||||
|
ruby-version: 2.6
|
||||||
|
|
||||||
|
# This step is not necessary if you add the gem to your Gemfile
|
||||||
|
- name: Install Code Scanning integration
|
||||||
|
run: bundle add code-scanning-rubocop --version 0.3.0 --skip-install
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: bundle install
|
||||||
|
|
||||||
|
- name: Rubocop run
|
||||||
|
run: |
|
||||||
|
bash -c "
|
||||||
|
bundle exec rubocop --require code_scanning --format CodeScanning::SarifFormatter -o rubocop.sarif
|
||||||
|
[[ $? -ne 2 ]]
|
||||||
|
"
|
||||||
|
|
||||||
|
- name: Upload Sarif output
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: rubocop.sarif
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow integrates SecurityCodeScan with GitHub's Code Scanning feature
|
||||||
|
# SecurityCodeScan is a vulnerability patterns detector for C# and VB.NET
|
||||||
|
|
||||||
|
name: SecurityCodeScan
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
SCS:
|
||||||
|
runs-on: windows-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: nuget/setup-nuget@04b0c2b8d1b97922f67eca497d7cf0bf17b8ffe1
|
||||||
|
- uses: microsoft/setup-msbuild@v1.0.2
|
||||||
|
|
||||||
|
- name: Set up projects for analysis
|
||||||
|
uses: security-code-scan/security-code-scan-add-action@f8ff4f2763ed6f229eded80b1f9af82ae7f32a0d
|
||||||
|
|
||||||
|
- name: Restore dependencies
|
||||||
|
run: dotnet restore
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
run: dotnet build --no-restore
|
||||||
|
|
||||||
|
- name: Convert sarif for uploading to GitHub
|
||||||
|
uses: security-code-scan/security-code-scan-results-action@cdb3d5e639054395e45bf401cba8688fcaf7a687
|
||||||
|
|
||||||
|
- name: Upload sarif
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow file requires a free account on Semgrep.dev to
|
||||||
|
# manage rules, file ignores, notifications, and more.
|
||||||
|
#
|
||||||
|
# See https://semgrep.dev/docs
|
||||||
|
|
||||||
|
name: Semgrep
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
semgrep:
|
||||||
|
name: Scan
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
# Checkout project source
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Scan code using project's configuration on https://semgrep.dev/manage
|
||||||
|
- uses: returntocorp/semgrep-action@fcd5ab7459e8d91cb1777481980d1b18b4fc6735
|
||||||
|
with:
|
||||||
|
publishToken: ${{ secrets.SEMGREP_APP_TOKEN }}
|
||||||
|
publishDeployment: ${{ secrets.SEMGREP_DEPLOYMENT_ID }}
|
||||||
|
generateSarif: "1"
|
||||||
|
|
||||||
|
# Upload SARIF file generated in previous step
|
||||||
|
- name: Upload SARIF file
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: semgrep.sarif
|
||||||
|
if: always()
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow integrates Scan with GitHub's code scanning feature
|
||||||
|
# Scan is a free open-source security tool for modern DevOps teams from ShiftLeft
|
||||||
|
# Visit https://slscan.io/en/latest/integrations/code-scan for help
|
||||||
|
name: SL Scan
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
Scan-Build:
|
||||||
|
# Scan runs on ubuntu, mac and windows
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
# Instructions
|
||||||
|
# 1. Setup JDK, Node.js, Python etc depending on your project type
|
||||||
|
# 2. Compile or build the project before invoking scan
|
||||||
|
# Example: mvn compile, or npm install or pip install goes here
|
||||||
|
# 3. Invoke Scan with the github token. Leave the workspace empty to use relative url
|
||||||
|
|
||||||
|
- name: Perform Scan
|
||||||
|
uses: ShiftLeftSecurity/scan-action@39af9e54bc599c8077e710291d790175c9231f64
|
||||||
|
env:
|
||||||
|
WORKSPACE: ""
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
SCAN_AUTO_BUILD: true
|
||||||
|
with:
|
||||||
|
output: reports
|
||||||
|
# Scan auto-detects the languages in your project. To override uncomment the below variable and set the type
|
||||||
|
# type: credscan,java
|
||||||
|
# type: python
|
||||||
|
|
||||||
|
- name: Upload report
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: reports
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# A sample workflow which checks out the code, builds a container
|
||||||
|
# image using Docker and scans that image for vulnerabilities using
|
||||||
|
# Snyk. The results are then uploaded to GitHub Security Code Scanning
|
||||||
|
#
|
||||||
|
# For more examples, including how to limit scans to only high-severity
|
||||||
|
# issues, monitor images for newly disclosed vulnerabilities in Snyk and
|
||||||
|
# fail PR checks for new vulnerabilities, see https://github.com/snyk/actions/
|
||||||
|
|
||||||
|
name: Snyk Container
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
snyk:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Build a Docker image
|
||||||
|
run: docker build -t your/image-to-test .
|
||||||
|
- name: Run Snyk to check Docker image for vulnerabilities
|
||||||
|
# Snyk can be used to break the build when it detects vulnerabilities.
|
||||||
|
# In this case we want to upload the issues to GitHub Code Scanning
|
||||||
|
continue-on-error: true
|
||||||
|
uses: snyk/actions/docker@14818c4695ecc4045f33c9cee9e795a788711ca4
|
||||||
|
env:
|
||||||
|
# In order to use the Snyk Action you will need to have a Snyk API token.
|
||||||
|
# More details in https://github.com/snyk/actions#getting-your-snyk-token
|
||||||
|
# or you can signup for free at https://snyk.io/login
|
||||||
|
SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
|
||||||
|
with:
|
||||||
|
image: your/image-to-test
|
||||||
|
args: --file=Dockerfile
|
||||||
|
- name: Upload result to GitHub Code Scanning
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: snyk.sarif
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# A sample workflow which checks out your Infrastructure as Code Configuration files,
|
||||||
|
# such as Kubernetes, Helm & Terraform and scans them for any security issues.
|
||||||
|
# The results are then uploaded to GitHub Security Code Scanning
|
||||||
|
#
|
||||||
|
# For more examples, including how to limit scans to only high-severity issues
|
||||||
|
# and fail PR checks, see https://github.com/snyk/actions/
|
||||||
|
|
||||||
|
name: Snyk Infrastructure as Code
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
snyk:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Run Snyk to check configuration files for security issues
|
||||||
|
# Snyk can be used to break the build when it detects security issues.
|
||||||
|
# In this case we want to upload the issues to GitHub Code Scanning
|
||||||
|
continue-on-error: true
|
||||||
|
uses: snyk/actions/iac@14818c4695ecc4045f33c9cee9e795a788711ca4
|
||||||
|
env:
|
||||||
|
# In order to use the Snyk Action you will need to have a Snyk API token.
|
||||||
|
# More details in https://github.com/snyk/actions#getting-your-snyk-token
|
||||||
|
# or you can signup for free at https://snyk.io/login
|
||||||
|
SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
|
||||||
|
with:
|
||||||
|
# Add the path to the configuration file that you would like to test.
|
||||||
|
# For example `deployment.yaml` for a Kubernetes deployment manifest
|
||||||
|
# or `main.tf` for a Terraform configuration file
|
||||||
|
file: your-file-to-test.yaml
|
||||||
|
- name: Upload result to GitHub Code Scanning
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: snyk.sarif
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
name: Sysdig - Build, scan, push and upload sarif report
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
|
||||||
|
build:
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Build the Docker image
|
||||||
|
# Tag image to be built
|
||||||
|
# Change ${{ github.repository }} variable by another image name if you want but don't forget changing also image-tag below
|
||||||
|
run: docker build . --file Dockerfile --tag ${{ github.repository }}:latest
|
||||||
|
|
||||||
|
- name: Sysdig Secure Inline Scan
|
||||||
|
id: scan
|
||||||
|
uses: sysdiglabs/scan-action@768d7626a14897e0948ea89c8437dd46a814b163
|
||||||
|
with:
|
||||||
|
# Tag of the image to analyse.
|
||||||
|
# Change ${{ github.repository }} variable by another image name if you want but don't forget changing also image-tag above
|
||||||
|
image-tag: ${{ github.repository }}:latest
|
||||||
|
# API token for Sysdig Scanning auth
|
||||||
|
sysdig-secure-token: ${{ secrets.SYSDIG_SECURE_TOKEN}}
|
||||||
|
# Sysdig secure endpoint. Please read: https://docs.sysdig.com/en/docs/administration/saas-regions-and-ip-ranges/
|
||||||
|
# US-East https://secure.sysdig.com
|
||||||
|
# US-West https://us2.app.sysdig.com
|
||||||
|
# EU https://eu1.app.sysdig.com
|
||||||
|
sysdig-secure-url: https://us2.app.sysdig.com
|
||||||
|
dockerfile-path: ./Dockerfile
|
||||||
|
input-type: docker-daemon
|
||||||
|
ignore-failed-scan: true
|
||||||
|
# Sysdig inline scanner requires privileged rights
|
||||||
|
run-as-user: root
|
||||||
|
|
||||||
|
- uses: github/codeql-action/upload-sarif@v1
|
||||||
|
#Upload SARIF file
|
||||||
|
if: always()
|
||||||
|
with:
|
||||||
|
sarif_file: ${{ steps.scan.outputs.sarifReport }}
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
name: build
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
name: Build
|
||||||
|
runs-on: "ubuntu-18.04"
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Build an image from Dockerfile
|
||||||
|
run: |
|
||||||
|
docker build -t docker.io/my-organization/my-app:${{ github.sha }} .
|
||||||
|
|
||||||
|
- name: Run Trivy vulnerability scanner
|
||||||
|
uses: aquasecurity/trivy-action@2a2157eb22c08c9a1fac99263430307b8d1bc7a2
|
||||||
|
with:
|
||||||
|
image-ref: 'docker.io/my-organization/my-app:${{ github.sha }}'
|
||||||
|
format: 'template'
|
||||||
|
template: '@/contrib/sarif.tpl'
|
||||||
|
output: 'trivy-results.sarif'
|
||||||
|
severity: 'CRITICAL,HIGH'
|
||||||
|
|
||||||
|
- name: Upload Trivy scan results to GitHub Security tab
|
||||||
|
uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: 'trivy-results.sarif'
|
||||||
@@ -0,0 +1,92 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# This workflow downloads and installs the latest version of Xanitizer, builds your project, runs a Xanitizer security analysis on it,
|
||||||
|
# and then archives the findings list reports and uploads the findings into the GitHub code scanning alert section of your repository.
|
||||||
|
#
|
||||||
|
# Documentation for the `RIGS-IT/xanitizer-action` is located here: https://github.com/RIGS-IT/xanitizer-action
|
||||||
|
#
|
||||||
|
# To use this basic workflow, you will need to complete the following setup steps:
|
||||||
|
#
|
||||||
|
# 1. The underlying Xanitizer, used in this workflow, needs a separate license file.
|
||||||
|
# Licenses are free of charge for open source projects and for educational usage.
|
||||||
|
# To get more information about the Xanitizer licenses and how to obtain a license file,
|
||||||
|
# please consult https://www.xanitizer.com/xanitizer-pricing/.
|
||||||
|
#
|
||||||
|
# 2. The content of the license file has to be stored as a GitHub secret (e.g. XANITIZER_LICENSE) on this repository.
|
||||||
|
# Please consult https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets for details.
|
||||||
|
#
|
||||||
|
# 3. Reference the GitHub secret in the step using the `RIGS-IT/xanitizer-action` GitHub action.
|
||||||
|
# Example:
|
||||||
|
# - name: Xanitizer Security Analysis
|
||||||
|
# uses: RIGS-IT/xanitizer-action@v1
|
||||||
|
# with:
|
||||||
|
# license: ${{ secrets.XANITIZER_LICENSE }}
|
||||||
|
#
|
||||||
|
# 4. As a static application security testing (SAST) tool,
|
||||||
|
# Xanitizer requires that all dependencies of the artifacts being analyzed can be resolved successfully.
|
||||||
|
# So you have to install all used libraries and build your project before running the security analysis,
|
||||||
|
# e.g. via `mvn compile` for Java or `npm install` for JavaScript
|
||||||
|
|
||||||
|
name: "Xanitizer Security Analysis"
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ $default-branch, $protected-branches ]
|
||||||
|
pull_request:
|
||||||
|
# The branches below must be a subset of the branches above
|
||||||
|
branches: [ $default-branch ]
|
||||||
|
schedule:
|
||||||
|
- cron: $cron-weekly
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
xanitizer-security-analysis:
|
||||||
|
# Xanitizer runs on ubuntu-latest and windows-latest.
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
# Check out the repository
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
# Set up the correct Java version for your project
|
||||||
|
# Please comment out, if your project does not contain Java source code.
|
||||||
|
- name: Set up JDK 11
|
||||||
|
uses: actions/setup-java@v1
|
||||||
|
with:
|
||||||
|
java-version: 11
|
||||||
|
|
||||||
|
# Compile the code for Java projects and get all libraries, e.g. via Maven
|
||||||
|
# Please adapt, if your project uses another build system to compile Java source code.
|
||||||
|
# Please comment out, if your project does not contain Java source code.
|
||||||
|
- name: Compile Java code
|
||||||
|
run: mvn -B compile
|
||||||
|
|
||||||
|
# Install all dependent libraries for JavaScript/TypeScript projects, e.g. via npm
|
||||||
|
# Please adapt to run `npm install` in the correct directories.
|
||||||
|
# Please adapt, if your project uses another package manager for getting JavaScript libraries.
|
||||||
|
# Please comment out, if your project does not use a package manager for getting JavaScript libraries.
|
||||||
|
- name: Install JavaScript libraries
|
||||||
|
run: npm install
|
||||||
|
|
||||||
|
# Run the security analysis with default settings
|
||||||
|
- name: Xanitizer Security Analysis
|
||||||
|
uses: RIGS-IT/xanitizer-action@87d13138fb113b727cbe040c744a15a2b4fe5316
|
||||||
|
with:
|
||||||
|
license: ${{ secrets.XANITIZER_LICENSE }}
|
||||||
|
|
||||||
|
# Archiving the findings list reports
|
||||||
|
- uses: actions/upload-artifact@v2
|
||||||
|
with:
|
||||||
|
name: Xanitizer-Reports
|
||||||
|
path: |
|
||||||
|
*-Findings-List.pdf
|
||||||
|
*-Findings-List.sarif
|
||||||
|
|
||||||
|
# Uploads the findings into the GitHub code scanning alert section using the upload-sarif action
|
||||||
|
- uses: github/codeql-action/upload-sarif@v1
|
||||||
|
with:
|
||||||
|
sarif_file: Xanitizer-Findings-List.sarif
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
# This workflow will build and push a new container image to Alibaba Cloud Container Registry (ACR),
|
# This workflow will build and push a new container image to Alibaba Cloud Container Registry (ACR),
|
||||||
# and then will deploy it to Alibaba Cloud Container Service for Kubernetes (ACK), when a release is created.
|
# and then will deploy it to Alibaba Cloud Container Service for Kubernetes (ACK), when there is a push to the $default-branch branch.
|
||||||
#
|
#
|
||||||
# To use this workflow, you will need to complete the following set-up steps:
|
# To use this workflow, you will need to complete the following set-up steps:
|
||||||
#
|
#
|
||||||
@@ -20,8 +20,9 @@
|
|||||||
name: Build and Deploy to ACK
|
name: Build and Deploy to ACK
|
||||||
|
|
||||||
on:
|
on:
|
||||||
release:
|
push:
|
||||||
types: [created]
|
branches:
|
||||||
|
- $default-branch
|
||||||
|
|
||||||
# Environment variables available to all jobs and steps in this workflow.
|
# Environment variables available to all jobs and steps in this workflow.
|
||||||
env:
|
env:
|
||||||
|
|||||||
@@ -1,34 +1,46 @@
|
|||||||
# This workflow will build and push a new container image to Amazon ECR,
|
# This workflow will build and push a new container image to Amazon ECR,
|
||||||
# and then will deploy a new task definition to Amazon ECS, when a release is created
|
# and then will deploy a new task definition to Amazon ECS, when there is a push to the $default-branch branch.
|
||||||
#
|
#
|
||||||
# To use this workflow, you will need to complete the following set-up steps:
|
# To use this workflow, you will need to complete the following set-up steps:
|
||||||
#
|
#
|
||||||
# 1. Create an ECR repository to store your images.
|
# 1. Create an ECR repository to store your images.
|
||||||
# For example: `aws ecr create-repository --repository-name my-ecr-repo --region us-east-2`.
|
# For example: `aws ecr create-repository --repository-name my-ecr-repo --region us-east-2`.
|
||||||
# Replace the value of `ECR_REPOSITORY` in the workflow below with your repository's name.
|
# Replace the value of the `ECR_REPOSITORY` environment variable in the workflow below with your repository's name.
|
||||||
# Replace the value of `aws-region` in the workflow below with your repository's region.
|
# Replace the value of the `AWS_REGION` environment variable in the workflow below with your repository's region.
|
||||||
#
|
#
|
||||||
# 2. Create an ECS task definition, an ECS cluster, and an ECS service.
|
# 2. Create an ECS task definition, an ECS cluster, and an ECS service.
|
||||||
# For example, follow the Getting Started guide on the ECS console:
|
# For example, follow the Getting Started guide on the ECS console:
|
||||||
# https://us-east-2.console.aws.amazon.com/ecs/home?region=us-east-2#/firstRun
|
# https://us-east-2.console.aws.amazon.com/ecs/home?region=us-east-2#/firstRun
|
||||||
# Replace the values for `service` and `cluster` in the workflow below with your service and cluster names.
|
# Replace the value of the `ECS_SERVICE` environment variable in the workflow below with the name you set for the Amazon ECS service.
|
||||||
|
# Replace the value of the `ECS_CLUSTER` environment variable in the workflow below with the name you set for the cluster.
|
||||||
#
|
#
|
||||||
# 3. Store your ECS task definition as a JSON file in your repository.
|
# 3. Store your ECS task definition as a JSON file in your repository.
|
||||||
# The format should follow the output of `aws ecs register-task-definition --generate-cli-skeleton`.
|
# The format should follow the output of `aws ecs register-task-definition --generate-cli-skeleton`.
|
||||||
# Replace the value of `task-definition` in the workflow below with your JSON file's name.
|
# Replace the value of the `ECS_TASK_DEFINITION` environment variable in the workflow below with the path to the JSON file.
|
||||||
# Replace the value of `container-name` in the workflow below with the name of the container
|
# Replace the value of the `CONTAINER_NAME` environment variable in the workflow below with the name of the container
|
||||||
# in the `containerDefinitions` section of the task definition.
|
# in the `containerDefinitions` section of the task definition.
|
||||||
#
|
#
|
||||||
# 4. Store an IAM user access key in GitHub Actions secrets named `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`.
|
# 4. Store an IAM user access key in GitHub Actions secrets named `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`.
|
||||||
# See the documentation for each action used below for the recommended IAM policies for this IAM user,
|
# See the documentation for each action used below for the recommended IAM policies for this IAM user,
|
||||||
# and best practices on handling the access key credentials.
|
# and best practices on handling the access key credentials.
|
||||||
|
|
||||||
on:
|
|
||||||
release:
|
|
||||||
types: [created]
|
|
||||||
|
|
||||||
name: Deploy to Amazon ECS
|
name: Deploy to Amazon ECS
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- $default-branch
|
||||||
|
|
||||||
|
env:
|
||||||
|
AWS_REGION: MY_AWS_REGION # set this to your preferred AWS region, e.g. us-west-1
|
||||||
|
ECR_REPOSITORY: MY_ECR_REPOSITORY # set this to your Amazon ECR repository name
|
||||||
|
ECS_SERVICE: MY_ECS_SERVICE # set this to your Amazon ECS service name
|
||||||
|
ECS_CLUSTER: MY_ECS_CLUSTER # set this to your Amazon ECS cluster name
|
||||||
|
ECS_TASK_DEFINITION: MY_ECS_TASK_DEFINITION # set this to the path to your Amazon ECS task definition
|
||||||
|
# file, e.g. .aws/task-definition.json
|
||||||
|
CONTAINER_NAME: MY_CONTAINER_NAME # set this to the name of the container in the
|
||||||
|
# containerDefinitions section of your task definition
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
name: Deploy
|
name: Deploy
|
||||||
@@ -44,7 +56,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||||
aws-region: us-east-2
|
aws-region: ${{ env.AWS_REGION }}
|
||||||
|
|
||||||
- name: Login to Amazon ECR
|
- name: Login to Amazon ECR
|
||||||
id: login-ecr
|
id: login-ecr
|
||||||
@@ -54,7 +66,6 @@ jobs:
|
|||||||
id: build-image
|
id: build-image
|
||||||
env:
|
env:
|
||||||
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
|
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
|
||||||
ECR_REPOSITORY: my-ecr-repo
|
|
||||||
IMAGE_TAG: ${{ github.sha }}
|
IMAGE_TAG: ${{ github.sha }}
|
||||||
run: |
|
run: |
|
||||||
# Build a docker container and
|
# Build a docker container and
|
||||||
@@ -68,14 +79,14 @@ jobs:
|
|||||||
id: task-def
|
id: task-def
|
||||||
uses: aws-actions/amazon-ecs-render-task-definition@v1
|
uses: aws-actions/amazon-ecs-render-task-definition@v1
|
||||||
with:
|
with:
|
||||||
task-definition: task-definition.json
|
task-definition: ${{ env.ECS_TASK_DEFINITION }}
|
||||||
container-name: sample-app
|
container-name: ${{ env.CONTAINER_NAME }}
|
||||||
image: ${{ steps.build-image.outputs.image }}
|
image: ${{ steps.build-image.outputs.image }}
|
||||||
|
|
||||||
- name: Deploy Amazon ECS task definition
|
- name: Deploy Amazon ECS task definition
|
||||||
uses: aws-actions/amazon-ecs-deploy-task-definition@v1
|
uses: aws-actions/amazon-ecs-deploy-task-definition@v1
|
||||||
with:
|
with:
|
||||||
task-definition: ${{ steps.task-def.outputs.task-definition }}
|
task-definition: ${{ steps.task-def.outputs.task-definition }}
|
||||||
service: sample-app-service
|
service: ${{ env.ECS_SERVICE }}
|
||||||
cluster: default
|
cluster: ${{ env.ECS_CLUSTER }}
|
||||||
wait-for-service-stability: true
|
wait-for-service-stability: true
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# This workflow will build and push a node.js application to an Azure Web App when a release is created.
|
# This workflow will build and push a node.js application to an Azure Web App when there is a push to the $default-branch branch.
|
||||||
#
|
#
|
||||||
# This workflow assumes you have already created the target Azure App Service web app.
|
# This workflow assumes you have already created the target Azure App Service web app.
|
||||||
# For instructions see https://docs.microsoft.com/azure/app-service/app-service-plan-manage#create-an-app-service-plan
|
# For instructions see https://docs.microsoft.com/azure/app-service/app-service-plan-manage#create-an-app-service-plan
|
||||||
@@ -16,8 +16,9 @@
|
|||||||
# For more information on GitHub Actions for Azure, refer to https://github.com/Azure/Actions
|
# For more information on GitHub Actions for Azure, refer to https://github.com/Azure/Actions
|
||||||
# For more samples to get started with GitHub Action workflows to deploy to Azure, refer to https://github.com/Azure/actions-workflow-samples
|
# For more samples to get started with GitHub Action workflows to deploy to Azure, refer to https://github.com/Azure/actions-workflow-samples
|
||||||
on:
|
on:
|
||||||
release:
|
push:
|
||||||
types: [created]
|
branches:
|
||||||
|
- $default-branch
|
||||||
|
|
||||||
env:
|
env:
|
||||||
AZURE_WEBAPP_NAME: your-app-name # set this to your application's name
|
AZURE_WEBAPP_NAME: your-app-name # set this to your application's name
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# This workflow will build a docker container, publish it to Google Container Registry, and deploy it to GKE when a release is created
|
# This workflow will build a docker container, publish it to Google Container Registry, and deploy it to GKE when there is a push to the $default-branch branch.
|
||||||
#
|
#
|
||||||
# To configure this workflow:
|
# To configure this workflow:
|
||||||
#
|
#
|
||||||
@@ -13,8 +13,9 @@
|
|||||||
name: Build and Deploy to GKE
|
name: Build and Deploy to GKE
|
||||||
|
|
||||||
on:
|
on:
|
||||||
release:
|
push:
|
||||||
types: [created]
|
branches:
|
||||||
|
- $default-branch
|
||||||
|
|
||||||
env:
|
env:
|
||||||
PROJECT_ID: ${{ secrets.GKE_PROJECT }}
|
PROJECT_ID: ${{ secrets.GKE_PROJECT }}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# This workflow will build a docker container, publish it to IBM Container Registry, and deploy it to IKS when a release is created
|
# This workflow will build a docker container, publish it to IBM Container Registry, and deploy it to IKS when there is a push to the $default-branch branch.
|
||||||
#
|
#
|
||||||
# To configure this workflow:
|
# To configure this workflow:
|
||||||
#
|
#
|
||||||
@@ -9,8 +9,9 @@
|
|||||||
name: Build and Deploy to IKS
|
name: Build and Deploy to IKS
|
||||||
|
|
||||||
on:
|
on:
|
||||||
release:
|
push:
|
||||||
types: [created]
|
branches:
|
||||||
|
- $default-branch
|
||||||
|
|
||||||
# Environment variables available to all jobs and steps in this workflow
|
# Environment variables available to all jobs and steps in this workflow
|
||||||
env:
|
env:
|
||||||
|
|||||||
@@ -1,75 +0,0 @@
|
|||||||
# This workflow will build a docker container, publish it to IBM Container Registry, and deploy it to IKS when a release is created
|
|
||||||
#
|
|
||||||
# To configure this workflow:
|
|
||||||
#
|
|
||||||
# 1. Ensure that your repository contains a Dockerfile
|
|
||||||
# 2. Setup secrets in your repository by going to settings: Create ICR_NAMESPACE and IBM_CLOUD_API_KEY
|
|
||||||
# 3. Change the values for the IBM_CLOUD_REGION, REGISTRY_HOSTNAME, IMAGE_NAME, IKS_CLUSTER, DEPLOYMENT_NAME, and PORT
|
|
||||||
|
|
||||||
name: Build and Deploy to IKS
|
|
||||||
|
|
||||||
on:
|
|
||||||
release:
|
|
||||||
types: [created]
|
|
||||||
|
|
||||||
# Environment variables available to all jobs and steps in this workflow
|
|
||||||
env:
|
|
||||||
GITHUB_SHA: ${{ github.sha }}
|
|
||||||
IBM_CLOUD_API_KEY: ${{ secrets.IBM_CLOUD_API_KEY }}
|
|
||||||
IBM_CLOUD_REGION: us-south
|
|
||||||
ICR_NAMESPACE: ${{ secrets.ICR_NAMESPACE }}
|
|
||||||
REGISTRY_HOSTNAME: us.icr.io
|
|
||||||
IMAGE_NAME: iks-test
|
|
||||||
IKS_CLUSTER: example-iks-cluster-name-or-id
|
|
||||||
DEPLOYMENT_NAME: iks-test
|
|
||||||
PORT: 5001
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
setup-build-publish-deploy:
|
|
||||||
name: Setup, Build, Publish, and Deploy
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
environment: production
|
|
||||||
steps:
|
|
||||||
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
|
|
||||||
# Download and Install IBM Cloud CLI
|
|
||||||
- name: Install IBM Cloud CLI
|
|
||||||
run: |
|
|
||||||
curl -fsSL https://clis.cloud.ibm.com/install/linux | sh
|
|
||||||
ibmcloud --version
|
|
||||||
ibmcloud config --check-version=false
|
|
||||||
ibmcloud plugin install -f kubernetes-service
|
|
||||||
ibmcloud plugin install -f container-registry
|
|
||||||
|
|
||||||
# Authenticate with IBM Cloud CLI
|
|
||||||
- name: Authenticate with IBM Cloud CLI
|
|
||||||
run: |
|
|
||||||
ibmcloud login --apikey "${IBM_CLOUD_API_KEY}" -r "${IBM_CLOUD_REGION}" -g default
|
|
||||||
ibmcloud cr region-set "${IBM_CLOUD_REGION}"
|
|
||||||
ibmcloud cr login
|
|
||||||
|
|
||||||
# Build the Docker image
|
|
||||||
- name: Build with Docker
|
|
||||||
run: |
|
|
||||||
docker build -t "$REGISTRY_HOSTNAME"/"$ICR_NAMESPACE"/"$IMAGE_NAME":"$GITHUB_SHA" \
|
|
||||||
--build-arg GITHUB_SHA="$GITHUB_SHA" \
|
|
||||||
--build-arg GITHUB_REF="$GITHUB_REF" .
|
|
||||||
|
|
||||||
# Push the image to IBM Container Registry
|
|
||||||
- name: Push the image to ICR
|
|
||||||
run: |
|
|
||||||
docker push $REGISTRY_HOSTNAME/$ICR_NAMESPACE/$IMAGE_NAME:$GITHUB_SHA
|
|
||||||
|
|
||||||
# Deploy the Docker image to the IKS cluster
|
|
||||||
- name: Deploy to IKS
|
|
||||||
run: |
|
|
||||||
ibmcloud ks cluster config --cluster $IKS_CLUSTER
|
|
||||||
kubectl config current-context
|
|
||||||
kubectl create deployment $DEPLOYMENT_NAME --image=$REGISTRY_HOSTNAME/$ICR_NAMESPACE/$IMAGE_NAME:$GITHUB_SHA --dry-run -o yaml > deployment.yaml
|
|
||||||
kubectl apply -f deployment.yaml
|
|
||||||
kubectl rollout status deployment/$DEPLOYMENT_NAME
|
|
||||||
kubectl create service loadbalancer $DEPLOYMENT_NAME --tcp=80:$PORT --dry-run -o yaml > service.yaml
|
|
||||||
kubectl apply -f service.yaml
|
|
||||||
kubectl get services -o wide
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time
|
|
||||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
|
|
||||||
|
|
||||||
name: Java CI with Maven
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [ $default-branch ]
|
|
||||||
pull_request:
|
|
||||||
branches: [ $default-branch ]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- name: Set up JDK 11
|
|
||||||
uses: actions/setup-java@v2
|
|
||||||
with:
|
|
||||||
java-version: '11'
|
|
||||||
distribution: 'adopt'
|
|
||||||
cache: maven
|
|
||||||
- name: Build with Maven
|
|
||||||
run: mvn -B package --file pom.xml
|
|
||||||
@@ -3,61 +3,57 @@
|
|||||||
# separate terms of service, privacy policy, and support
|
# separate terms of service, privacy policy, and support
|
||||||
# documentation.
|
# documentation.
|
||||||
|
|
||||||
### The OpenShift Starter workflow will:
|
# 💁 The OpenShift Starter workflow will:
|
||||||
# - Checkout your repository
|
# - Checkout your repository
|
||||||
# - Perform a Docker build
|
# - Perform a container image build
|
||||||
# - Push the built image to an image registry
|
# - Push the built image to the GitHub Container Registry (GHCR)
|
||||||
# - Log in to your OpenShift cluster
|
# - Log in to your OpenShift cluster
|
||||||
# - Create an OpenShift app from the image and expose it to the internet.
|
# - Create an OpenShift app from the image and expose it to the internet
|
||||||
|
|
||||||
### Before you begin:
|
# ℹ️ Configure your repository and the workflow with the following steps:
|
||||||
# - Have write access to a container image registry such as quay.io or Dockerhub.
|
# 1. Have access to an OpenShift cluster. Refer to https://www.openshift.com/try
|
||||||
# - Have access to an OpenShift cluster.
|
# 2. Create the OPENSHIFT_SERVER and OPENSHIFT_TOKEN repository secrets. Refer to:
|
||||||
# - For instructions to get started with OpenShift see https://www.openshift.com/try
|
# - https://github.com/redhat-actions/oc-login#readme
|
||||||
# - The project you wish to add this workflow to should have a Dockerfile.
|
# - https://docs.github.com/en/actions/reference/encrypted-secrets
|
||||||
# - If you don't have a Dockerfile at the repository root, see the buildah-build step.
|
# - https://cli.github.com/manual/gh_secret_set
|
||||||
# - Builds from scratch are also available, but require more configuration.
|
# 3. (Optional) Edit the top-level 'env' section as marked with '🖊️' if the defaults are not suitable for your project.
|
||||||
|
# 4. (Optional) Edit the build-image step to build your project.
|
||||||
|
# The default build type is by using a Dockerfile at the root of the repository,
|
||||||
|
# but can be replaced with a different file, a source-to-image build, or a step-by-step buildah build.
|
||||||
|
# 5. Commit and push the workflow file to your default branch to trigger a workflow run.
|
||||||
|
|
||||||
### To get the workflow running:
|
# 👋 Visit our GitHub organization at https://github.com/redhat-actions/ to see our actions and provide feedback.
|
||||||
# 1. Add this workflow to your repository.
|
|
||||||
# 2. Edit the top-level 'env' section, which contains a list of environment variables that must be configured.
|
|
||||||
# 3. Create the secrets referenced in the 'env' section under your repository Settings.
|
|
||||||
# 4. Edit the 'branches' in the 'on' section to trigger the workflow on a push to your branch.
|
|
||||||
# 5. Commit and push your changes.
|
|
||||||
|
|
||||||
# For a more sophisticated example, see https://github.com/redhat-actions/spring-petclinic/blob/main/.github/workflows/petclinic-sample.yaml
|
|
||||||
# Also see our GitHub organization, https://github.com/redhat-actions/
|
|
||||||
# ▶️ See a video of how to set up this workflow at https://www.youtube.com/watch?v=6hgBO-1pKho
|
|
||||||
|
|
||||||
name: OpenShift
|
name: OpenShift
|
||||||
|
|
||||||
# ⬇️ Modify the fields marked with ⬇️ to fit your project, and create any secrets that are referenced.
|
|
||||||
# https://docs.github.com/en/free-pro-team@latest/actions/reference/encrypted-secrets
|
|
||||||
env:
|
env:
|
||||||
# ⬇️ EDIT with your registry and registry path.
|
# 🖊️ EDIT your repository secrets to log into your OpenShift cluster and set up the context.
|
||||||
REGISTRY: quay.io/<username>
|
|
||||||
# ⬇️ EDIT with your registry username.
|
|
||||||
REGISTRY_USER: <username>
|
|
||||||
REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }}
|
|
||||||
|
|
||||||
# ⬇️ EDIT to log into your OpenShift cluster and set up the context.
|
|
||||||
# See https://github.com/redhat-actions/oc-login#readme for how to retrieve these values.
|
# See https://github.com/redhat-actions/oc-login#readme for how to retrieve these values.
|
||||||
|
# To get a permanent token, refer to https://github.com/redhat-actions/oc-login/wiki/Using-a-Service-Account-for-GitHub-Actions
|
||||||
OPENSHIFT_SERVER: ${{ secrets.OPENSHIFT_SERVER }}
|
OPENSHIFT_SERVER: ${{ secrets.OPENSHIFT_SERVER }}
|
||||||
OPENSHIFT_TOKEN: ${{ secrets.OPENSHIFT_TOKEN }}
|
OPENSHIFT_TOKEN: ${{ secrets.OPENSHIFT_TOKEN }}
|
||||||
|
# 🖊️ EDIT to set the kube context's namespace after login. Leave blank to use your user's default namespace.
|
||||||
# ⬇️ EDIT with any additional port your application should expose.
|
|
||||||
# By default, oc new-app action creates a service to the image's lowest numeric exposed port.
|
|
||||||
APP_PORT: ""
|
|
||||||
|
|
||||||
# ⬇️ EDIT if you wish to set the kube context's namespace after login. Leave blank to use the default namespace.
|
|
||||||
OPENSHIFT_NAMESPACE: ""
|
OPENSHIFT_NAMESPACE: ""
|
||||||
|
|
||||||
# If you wish to manually provide the APP_NAME and TAG, set them here, otherwise they will be auto-detected.
|
# 🖊️ EDIT to set a name for your OpenShift app, or a default one will be generated below.
|
||||||
APP_NAME: ""
|
APP_NAME: ""
|
||||||
TAG: ""
|
|
||||||
|
# 🖊️ EDIT with the port your application should be accessible on.
|
||||||
|
# If the container image exposes *exactly one* port, this can be left blank.
|
||||||
|
# Refer to the 'port' input of https://github.com/redhat-actions/oc-new-app
|
||||||
|
APP_PORT: ""
|
||||||
|
|
||||||
|
# 🖊️ EDIT to change the image registry settings.
|
||||||
|
# Registries such as GHCR, Quay.io, and Docker Hub are supported.
|
||||||
|
IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }}
|
||||||
|
IMAGE_REGISTRY_USER: ${{ github.actor }}
|
||||||
|
IMAGE_REGISTRY_PASSWORD: ${{ github.token }}
|
||||||
|
|
||||||
|
# 🖊️ EDIT to specify custom tags for the container image, or default tags will be generated below.
|
||||||
|
IMAGE_TAGS: ""
|
||||||
|
|
||||||
on:
|
on:
|
||||||
# https://docs.github.com/en/free-pro-team@latest/actions/reference/events-that-trigger-workflows
|
# https://docs.github.com/en/actions/reference/events-that-trigger-workflows
|
||||||
push:
|
push:
|
||||||
# Edit to the branch(es) you want to build and deploy on each push.
|
# Edit to the branch(es) you want to build and deploy on each push.
|
||||||
branches: [ $default-branch ]
|
branches: [ $default-branch ]
|
||||||
@@ -65,32 +61,40 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
openshift-ci-cd:
|
openshift-ci-cd:
|
||||||
name: Build and deploy to OpenShift
|
name: Build and deploy to OpenShift
|
||||||
|
# ubuntu-20.04 can also be used.
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
environment: production
|
environment: production
|
||||||
|
|
||||||
outputs:
|
outputs:
|
||||||
ROUTE: ${{ steps.deploy-and-expose.outputs.route }}
|
ROUTE: ${{ steps.deploy-and-expose.outputs.route }}
|
||||||
SELECTOR: ${{ steps.deploy-and-expose.outputs.selector }}
|
SELECTOR: ${{ steps.deploy-and-expose.outputs.selector }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Check if secrets exists
|
- name: Check for required secrets
|
||||||
uses: actions/github-script@v3
|
uses: actions/github-script@v4
|
||||||
with:
|
with:
|
||||||
script: |
|
script: |
|
||||||
const secrets = {
|
const secrets = {
|
||||||
REGISTRY_PASSWORD: `${{ secrets.REGISTRY_PASSWORD }}`,
|
|
||||||
OPENSHIFT_SERVER: `${{ secrets.OPENSHIFT_SERVER }}`,
|
OPENSHIFT_SERVER: `${{ secrets.OPENSHIFT_SERVER }}`,
|
||||||
OPENSHIFT_TOKEN: `${{ secrets.OPENSHIFT_TOKEN }}`,
|
OPENSHIFT_TOKEN: `${{ secrets.OPENSHIFT_TOKEN }}`,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const GHCR = "ghcr.io";
|
||||||
|
if (`${{ env.IMAGE_REGISTRY }}`.startsWith(GHCR)) {
|
||||||
|
core.info(`Image registry is ${GHCR} - no registry password required`);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
core.info("A registry password is required");
|
||||||
|
secrets["IMAGE_REGISTRY_PASSWORD"] = `${{ secrets.IMAGE_REGISTRY_PASSWORD }}`;
|
||||||
|
}
|
||||||
|
|
||||||
const missingSecrets = Object.entries(secrets).filter(([ name, value ]) => {
|
const missingSecrets = Object.entries(secrets).filter(([ name, value ]) => {
|
||||||
if (value.length === 0) {
|
if (value.length === 0) {
|
||||||
core.warning(`Secret "${name}" is not set`);
|
core.error(`Secret "${name}" is not set`);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
core.info(`✔️ Secret "${name}" is set`);
|
core.info(`✔️ Secret "${name}" is set`);
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
if (missingSecrets.length > 0) {
|
if (missingSecrets.length > 0) {
|
||||||
@@ -104,48 +108,50 @@ jobs:
|
|||||||
core.info(`✅ All the required secrets are set`);
|
core.info(`✅ All the required secrets are set`);
|
||||||
}
|
}
|
||||||
|
|
||||||
- uses: actions/checkout@v2
|
- name: Check out repository
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
- name: Determine app name
|
- name: Determine app name
|
||||||
if: env.APP_NAME == ''
|
if: env.APP_NAME == ''
|
||||||
run: |
|
run: |
|
||||||
echo "APP_NAME=$(basename $PWD)" | tee -a $GITHUB_ENV
|
echo "APP_NAME=$(basename $PWD)" | tee -a $GITHUB_ENV
|
||||||
|
|
||||||
- name: Determine tag
|
- name: Determine image tags
|
||||||
if: env.TAG == ''
|
if: env.IMAGE_TAGS == ''
|
||||||
run: |
|
run: |
|
||||||
echo "TAG=${GITHUB_SHA::7}" | tee -a $GITHUB_ENV
|
echo "IMAGE_TAGS=latest ${GITHUB_SHA::12}" | tee -a $GITHUB_ENV
|
||||||
|
|
||||||
# https://github.com/redhat-actions/buildah-build#readme
|
# https://github.com/redhat-actions/buildah-build#readme
|
||||||
- name: Build from Dockerfile
|
- name: Build from Dockerfile
|
||||||
id: image-build
|
id: build-image
|
||||||
uses: redhat-actions/buildah-build@v2
|
uses: redhat-actions/buildah-build@v2
|
||||||
with:
|
with:
|
||||||
image: ${{ env.APP_NAME }}
|
image: ${{ env.APP_NAME }}
|
||||||
tags: ${{ env.TAG }}
|
tags: ${{ env.IMAGE_TAGS }}
|
||||||
# If you don't have a dockerfile, see:
|
|
||||||
# https://github.com/redhat-actions/buildah-build#scratch-build-inputs
|
# If you don't have a Dockerfile/Containerfile, refer to https://github.com/redhat-actions/buildah-build#scratch-build-inputs
|
||||||
# Otherwise, point this to your Dockerfile relative to the repository root.
|
# Or, perform a source-to-image build using https://github.com/redhat-actions/s2i-build
|
||||||
|
# Otherwise, point this to your Dockerfile/Containerfile relative to the repository root.
|
||||||
dockerfiles: |
|
dockerfiles: |
|
||||||
./Dockerfile
|
./Dockerfile
|
||||||
|
|
||||||
# https://github.com/redhat-actions/push-to-registry#readme
|
# https://github.com/redhat-actions/push-to-registry#readme
|
||||||
- name: Push to registry
|
- name: Push to registry
|
||||||
id: push-to-registry
|
id: push-image
|
||||||
uses: redhat-actions/push-to-registry@v2
|
uses: redhat-actions/push-to-registry@v2
|
||||||
with:
|
with:
|
||||||
image: ${{ steps.image-build.outputs.image }}
|
image: ${{ steps.build-image.outputs.image }}
|
||||||
tags: ${{ steps.image-build.outputs.tags }}
|
tags: ${{ steps.build-image.outputs.tags }}
|
||||||
registry: ${{ env.REGISTRY }}
|
registry: ${{ env.IMAGE_REGISTRY }}
|
||||||
username: ${{ env.REGISTRY_USER }}
|
username: ${{ env.IMAGE_REGISTRY_USER }}
|
||||||
password: ${{ env.REGISTRY_PASSWORD }}
|
password: ${{ env.IMAGE_REGISTRY_PASSWORD }}
|
||||||
|
|
||||||
# The path the image was pushed to is now stored in ${{ steps.push-to-registry.outputs.registry-path }}
|
# The path the image was pushed to is now stored in ${{ steps.push-image.outputs.registry-path }}
|
||||||
|
|
||||||
# oc-login works on all platforms, but oc must be installed first.
|
- name: Install oc
|
||||||
# The GitHub Ubuntu runner already includes oc.
|
uses: redhat-actions/openshift-tools-installer@v1
|
||||||
# Otherwise, https://github.com/redhat-actions/openshift-tools-installer can be used to install oc,
|
with:
|
||||||
# as well as many other tools.
|
oc: 4
|
||||||
|
|
||||||
# https://github.com/redhat-actions/oc-login#readme
|
# https://github.com/redhat-actions/oc-login#readme
|
||||||
- name: Log in to OpenShift
|
- name: Log in to OpenShift
|
||||||
@@ -163,18 +169,19 @@ jobs:
|
|||||||
uses: redhat-actions/oc-new-app@v1
|
uses: redhat-actions/oc-new-app@v1
|
||||||
with:
|
with:
|
||||||
app_name: ${{ env.APP_NAME }}
|
app_name: ${{ env.APP_NAME }}
|
||||||
image: ${{ steps.push-to-registry.outputs.registry-path }}
|
image: ${{ steps.push-image.outputs.registry-path }}
|
||||||
namespace: ${{ env.OPENSHIFT_NAMESPACE }}
|
namespace: ${{ env.OPENSHIFT_NAMESPACE }}
|
||||||
port: ${{ env.APP_PORT }}
|
port: ${{ env.APP_PORT }}
|
||||||
|
|
||||||
- name: View application route
|
- name: Print application URL
|
||||||
|
env:
|
||||||
|
ROUTE: ${{ steps.deploy-and-expose.outputs.route }}
|
||||||
|
SELECTOR: ${{ steps.deploy-and-expose.outputs.selector }}
|
||||||
run: |
|
run: |
|
||||||
[[ -n ${{ env.ROUTE }} ]] || (echo "Determining application route failed in previous step"; exit 1)
|
[[ -n ${{ env.ROUTE }} ]] || (echo "Determining application route failed in previous step"; exit 1)
|
||||||
|
echo
|
||||||
echo "======================== Your application is available at: ========================"
|
echo "======================== Your application is available at: ========================"
|
||||||
echo ${{ env.ROUTE }}
|
echo ${{ env.ROUTE }}
|
||||||
echo "==================================================================================="
|
echo "==================================================================================="
|
||||||
echo
|
echo
|
||||||
echo "Your app can be taken down with: \"oc delete all --selector='${{ env.SELECTOR }}'\""
|
echo "Your app can be taken down with: \"oc delete all --selector='${{ env.SELECTOR }}'\""
|
||||||
env:
|
|
||||||
ROUTE: ${{ steps.deploy-and-expose.outputs.route }}
|
|
||||||
SELECTOR: ${{ steps.deploy-and-expose.outputs.selector }}
|
|
||||||
|
|||||||
@@ -3,5 +3,5 @@
|
|||||||
"description": "Deploy a container to Alibaba Cloud Container Service for Kubernetes (ACK).",
|
"description": "Deploy a container to Alibaba Cloud Container Service for Kubernetes (ACK).",
|
||||||
"creator": "Alibaba Cloud",
|
"creator": "Alibaba Cloud",
|
||||||
"iconName": "alibabacloud",
|
"iconName": "alibabacloud",
|
||||||
"categories": ["Deployment"]
|
"categories": ["Deployment", "Dockerfile"]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,5 +3,5 @@
|
|||||||
"description": "Deploy a container to an Amazon ECS service powered by AWS Fargate or Amazon EC2.",
|
"description": "Deploy a container to an Amazon ECS service powered by AWS Fargate or Amazon EC2.",
|
||||||
"creator": "Amazon Web Services",
|
"creator": "Amazon Web Services",
|
||||||
"iconName": "aws",
|
"iconName": "aws",
|
||||||
"categories": ["Deployment", "JavaScript", "npm"]
|
"categories": ["Deployment", "Dockerfile"]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "Deploy Node.js to Azure Web App",
|
"name": "Deploy Node.js to Azure Web App",
|
||||||
"description": "[Test Partner]Build a Node.js project and deploy it to an Azure Web App.",
|
"description": "Build a Node.js project and deploy it to an Azure Web App.",
|
||||||
"creator": "Microsoft Azure",
|
"creator": "Microsoft Azure",
|
||||||
"iconName": "azure",
|
"iconName": "azure",
|
||||||
"categories": ["Deployment", "JavaScript", "npm"]
|
"categories": ["Deployment"]
|
||||||
}
|
}
|
||||||
@@ -3,5 +3,5 @@
|
|||||||
"description": "Build a docker container, publish it to Google Container Registry, and deploy to GKE.",
|
"description": "Build a docker container, publish it to Google Container Registry, and deploy to GKE.",
|
||||||
"creator": "Google Cloud",
|
"creator": "Google Cloud",
|
||||||
"iconName": "googlegke",
|
"iconName": "googlegke",
|
||||||
"categories": ["Deployment"]
|
"categories": ["Deployment", "Dockerfile"]
|
||||||
}
|
}
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "(Python)Deploy to IBM Cloud Kubernetes Service",
|
"name": "Deploy to IBM Cloud Kubernetes Service",
|
||||||
"description": "Build a docker container, publish it to IBM Cloud Container Registry, and deploy to IBM Cloud Kubernetes Service.",
|
"description": "Build a docker container, publish it to IBM Cloud Container Registry, and deploy to IBM Cloud Kubernetes Service.",
|
||||||
"creator": "IBM",
|
"creator": "IBM",
|
||||||
"iconName": "ibm",
|
"iconName": "ibm",
|
||||||
"categories": ["Deployment", "Python"]
|
"categories": ["Deployment", "Dockerfile"]
|
||||||
}
|
}
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "(Java)Deploy to IBM Cloud Kubernetes Service",
|
|
||||||
"description": "(Java)Build a docker container, publish it to IBM Cloud Container Registry, and deploy to IBM Cloud Kubernetes Service.",
|
|
||||||
"creator": "IBM",
|
|
||||||
"iconName": "ibm",
|
|
||||||
"categories": ["Deployment", "Java"]
|
|
||||||
}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "CD Java with Maven",
|
|
||||||
"description": "CD Build and test a Java project with Apache Maven.",
|
|
||||||
"creator": "Amazon Web Services",
|
|
||||||
"iconName": "aws",
|
|
||||||
"categories": ["Deployment", "Java", "Maven", "Spring", "JSF"]
|
|
||||||
}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "CD Python application",
|
|
||||||
"description": "CD Create and test a Python application.",
|
|
||||||
"creator": "IBM",
|
|
||||||
"iconName": "ibm",
|
|
||||||
"categories": ["Deployment", "Python", "Bottle", "Flask"]
|
|
||||||
}
|
|
||||||
@@ -3,5 +3,5 @@
|
|||||||
"description": "This workflow will build a docker container, publish and deploy it to Tencent Kubernetes Engine (TKE).",
|
"description": "This workflow will build a docker container, publish and deploy it to Tencent Kubernetes Engine (TKE).",
|
||||||
"creator": "Tencent Cloud",
|
"creator": "Tencent Cloud",
|
||||||
"iconName": "tencentcloud",
|
"iconName": "tencentcloud",
|
||||||
"categories": ["Deployment"]
|
"categories": ["Deployment", "Dockerfile"]
|
||||||
}
|
}
|
||||||
@@ -1,36 +0,0 @@
|
|||||||
# This workflow will install Python dependencies, run tests and lint with a single version of Python
|
|
||||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
|
|
||||||
|
|
||||||
name: Python application
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [ $default-branch ]
|
|
||||||
pull_request:
|
|
||||||
branches: [ $default-branch ]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- name: Set up Python 3.9
|
|
||||||
uses: actions/setup-python@v2
|
|
||||||
with:
|
|
||||||
python-version: 3.9
|
|
||||||
- name: Install dependencies
|
|
||||||
run: |
|
|
||||||
python -m pip install --upgrade pip
|
|
||||||
pip install flake8 pytest
|
|
||||||
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
|
|
||||||
- name: Lint with flake8
|
|
||||||
run: |
|
|
||||||
# stop the build if there are Python syntax errors or undefined names
|
|
||||||
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
|
||||||
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
|
||||||
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
|
||||||
- name: Test with pytest
|
|
||||||
run: |
|
|
||||||
pytest
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
# This workflow will build a docker container, publish and deploy it to Tencent Kubernetes Engine (TKE).
|
# This workflow will build a docker container, publish and deploy it to Tencent Kubernetes Engine (TKE) when there is a push to the $default-branch branch.
|
||||||
#
|
#
|
||||||
# To configure this workflow:
|
# To configure this workflow:
|
||||||
#
|
#
|
||||||
@@ -16,8 +16,9 @@
|
|||||||
name: Tencent Kubernetes Engine
|
name: Tencent Kubernetes Engine
|
||||||
|
|
||||||
on:
|
on:
|
||||||
release:
|
push:
|
||||||
types: [created]
|
branches:
|
||||||
|
- $default-branch
|
||||||
|
|
||||||
# Environment variables available to all jobs and steps in this workflow
|
# Environment variables available to all jobs and steps in this workflow
|
||||||
env:
|
env:
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 23.0.4, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 160.0 180.0" style="enable-background:new 0 0 566.93 192.22;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#2D2D2D;}
|
||||||
|
.st1{fill:#7F488E;}
|
||||||
|
.st2{fill:#FFFFFF;}
|
||||||
|
</style>
|
||||||
|
<polygon class="st1" points="154.94,136.71 154.94,53.26 82.67,11.54 10.4,53.26 10.4,136.71 82.67,178.44 "/>
|
||||||
|
<path class="st2" d="M71.02,77.04h11.61v43.88h0.14v9.83h-0.14v13.8H71.72v-13.8H35.09v-9.63L71.02,77.04z M71.72,120.91V91.42
|
||||||
|
l-24.04,29.49H71.72z"/>
|
||||||
|
<path class="st2" d="M82.06,57.1c6.68-4.57,14.16-6.85,22.44-6.85c7.08,0,12.81,1.64,17.17,4.91c4.37,3.28,6.55,7.96,6.55,14.05
|
||||||
|
c0,5.05-1.68,9.36-5.05,12.93c-3.37,3.57-7.95,7.07-13.75,10.47c-0.45,0.28-1.29,0.79-2.5,1.54c-1.22,0.75-2.08,1.28-2.59,1.59
|
||||||
|
c-0.51,0.31-1.29,0.79-2.33,1.43c-1.05,0.64-1.82,1.12-2.33,1.43c-0.51,0.31-1.17,0.79-2,1.43c-0.82,0.64-1.43,1.18-1.82,1.62
|
||||||
|
c-0.39,0.44-0.85,0.98-1.38,1.62c-0.53,0.64-0.9,1.23-1.13,1.77c-0.23,0.54-0.44,1.15-0.64,1.83c-0.2,0.68-0.3,1.35-0.3,2.03
|
||||||
|
l36.19-0.1v10.23h-48.8v-5.16c0-8.6,3.64-15.75,10.92-21.44c2.03-1.53,5.84-3.99,11.41-7.39c5.61-3.22,9.22-5.56,10.83-7.01
|
||||||
|
c2.65-2.58,3.97-5.46,3.97-8.64c0-2.91-1.18-5.13-3.52-6.65c-2.35-1.52-5.64-2.28-9.88-2.28c-7.35,0-14.49,2.52-21.44,7.54V57.1z"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.4 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 31.44 37.52"><defs><style>.cls-1{fill:#307fe2;}</style></defs><path class="cls-1" d="M24.8,29.72V13.77C24.8,9,21,5.51,15.65,5.51A8.83,8.83,0,0,0,7,11.35c0,.45.06,1.25,1.37,1.66s2-.3,2.16-.79A5.29,5.29,0,0,1,15.65,8.7c3.21,0,5.55,2.15,5.55,5.11v1.27c0,.6-.8,1-1.54,1.15L13.27,17.9C8.49,19,6.63,20.84,6.63,24.5c0,4.26,3.83,7.47,8.93,7.51a.48.48,0,0,0,.2,0,1.47,1.47,0,0,0,.78-1.5,1.69,1.69,0,0,0-.78-1.6.42.42,0,0,0-.21-.06c-3.09,0-5.31-1.84-5.31-4.31,0-2.28,1.25-3,3.88-3.61,0,0,4.62-1.22,6.44-1.76a.48.48,0,0,1,.62.46l0,1v5.61a.65.65,0,0,0,0,.2A7.49,7.49,0,0,0,24.42,30C24.73,30.15,24.8,29.89,24.8,29.72Z"/></svg>
|
||||||
|
After Width: | Height: | Size: 699 B |
|
After Width: | Height: | Size: 439 KiB |
@@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 24.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 128 128" style="enable-background:new 0 0 128 128;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#54B848;}
|
||||||
|
</style>
|
||||||
|
<path class="st0" d="M98.3,72.1c-4.2,0-7.7,3.4-7.7,7.7v2.9c0,4.2-3.4,7.5-7.5,7.5H44.9c-4.2,0-7.5-3.4-7.5-7.5v-37
|
||||||
|
c0-4.2,3.4-7.5,7.5-7.5H83c1,0,1.8,0,2.5,0h0.1c1.9,0.5,3,1.6,3.6,3c0.7,1.6,1.2,3.9-1.4,6.1L65.9,63.2l-6.7-8.5
|
||||||
|
c-2.6-3.3-7.4-4-10.8-1.4c-3.3,2.6-4,7.4-1.4,10.8l11.2,14.5c2.5,3.3,7.2,4,10.6,1.5l25.4-18.6c0.3-0.2,3.6-2.8,3.9-3.1
|
||||||
|
c7.6-6.8,9.2-15.6,6.1-23.3c-3.2-7.8-11.4-12.7-21.3-12.7H44.9C32.3,22.4,22,32.7,22,45.3v37.3c0,12.6,10.3,22.9,22.9,22.9h38.2
|
||||||
|
c12.6,0,22.9-10.2,22.9-22.9v-2.9C106,75.5,102.6,72.1,98.3,72.1z M95.1,39c-0.2-0.1-0.3-0.1-0.5-0.2C94.8,38.9,94.9,38.9,95.1,39
|
||||||
|
L95.1,39z"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1016 B |
@@ -0,0 +1,53 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 25.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 147.4 147.4" style="enable-background:new 0 0 147.4 147.4;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#32A4DD;}
|
||||||
|
.st1{fill:#8EC043;}
|
||||||
|
.st2{fill:#005794;}
|
||||||
|
</style>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M117.91,44.88c2.57,5.98,4.01,12.56,4.01,19.48c0,27.24-22.08,49.32-49.32,49.32S23.28,91.6,23.28,64.36
|
||||||
|
c0-10.83,3.5-20.84,9.42-28.97c-9.74,9.86-15.75,23.41-15.75,38.36c0,30.16,24.45,54.61,54.61,54.61s54.61-24.45,54.61-54.61
|
||||||
|
C126.17,63.15,123.14,53.25,117.91,44.88z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st1" d="M113.45,51.23c-2.6-8.18-7.56-15.32-14.09-20.59c3.71,3.71,6.69,8.16,8.71,13.1c0.95,1.74,1.77,3.55,2.47,5.43
|
||||||
|
c-1.62-1-3.33-1.84-5.11-2.49c2.92,2.94,5.19,6.62,6.47,10.86c0.76,2.54,1.12,5.11,1.11,7.64h0c-0.26,5.67-1.68,11.03-4.02,15.86
|
||||||
|
c-0.44-1.91-1.07-3.77-1.9-5.56c-0.01,4.15-1.01,8.35-3.11,12.25c-0.94,1.75-2.05,3.34-3.3,4.78c-4.27,4.15-9.44,7.37-15.2,9.34
|
||||||
|
c1.1-1.73,2.02-3.57,2.73-5.5c-2.94,2.92-6.62,5.19-10.86,6.47c-2.54,0.76-5.11,1.12-7.64,1.11l0,0.05
|
||||||
|
c-7.51-0.46-14.47-2.94-20.34-6.92c2.13-0.19,4.23-0.62,6.27-1.29c-4.11-0.5-8.17-1.99-11.8-4.54c-2.04-1.43-3.8-3.12-5.3-4.97
|
||||||
|
c-2.31-3.37-4.12-7.1-5.33-11.1c0.64,0.17,1.31,0.28,2.01,0.31c0.84,0.03,1.66-0.07,2.44-0.27c-2.87-0.93-5.08-3.28-5.82-6.2
|
||||||
|
c-0.11-0.79-0.2-1.58-0.27-2.38c0-0.02,0-0.04,0-0.06l0,0c-0.09-1.09-0.14-2.2-0.14-3.32c0-0.63,0.02-1.25,0.05-1.87
|
||||||
|
c-0.05-0.86-0.09-1.72-0.09-2.58c0-5.73,1.22-11.17,3.4-16.09c-3.68,6.36-5.79,13.74-5.79,21.61c0,0.73,0.02,1.45,0.06,2.18
|
||||||
|
c0.12,2.4,0.43,4.75,0.93,7.04c1.12,5.15,3.16,9.97,5.94,14.26c2.23,3.45,4.94,6.56,8.04,9.24c7,6.06,15.95,9.91,25.79,10.47
|
||||||
|
c0.83,0.05,1.66,0.08,2.5,0.08c3.28,0,6.46-0.38,9.53-1.07c7.53-1.69,14.32-5.35,19.8-10.41c3.18-2.94,5.92-6.35,8.1-10.12
|
||||||
|
c3.56-6.14,5.65-13.24,5.8-20.82c0.01-0.28,0.02-0.56,0.02-0.84C115.49,59.75,114.77,55.36,113.45,51.23z"/>
|
||||||
|
<g>
|
||||||
|
<path class="st2" d="M46.36,66.58c-0.7-0.39-1.44-0.72-2.19-1.02l-0.64-0.25c-1.03-0.41-2.09-0.73-3.16-0.99
|
||||||
|
c2.42-1.14,5.13-1.78,7.98-1.78c3.22,0,6.26,0.82,8.91,2.25c1.5,3.77,2.96,7.51,8.19,8.75c1.04,0.25,2.23,0.39,3.6,0.41
|
||||||
|
c-0.61,1.11-1.52,1.95-2.49,2.73c-1.68,1.35-3.65,2.39-5.85,3.01c-3.9,1.09-7.86,0.68-11.27-0.88c-1.19-0.55-1.38-2.08-0.54-2.94
|
||||||
|
c0.49-0.5,0.98-1.01,1.29-1.65C51.59,71.29,50.13,68.68,46.36,66.58z M25.69,53.54c1.44,5.13,6.32,9.32,11.25,10.13
|
||||||
|
c3.29-2.13,7.21-3.38,11.41-3.38c2.67,0,5.22,0.5,7.57,1.42c0-0.01-0.01-0.01-0.01-0.02c4.71,1.96,9.54,4.53,12.45,7.62
|
||||||
|
c3.93,4.16,2.95,9.67,2.95,9.67c10.03-10.02,5.41-21.34,5.41-21.34c-15.29,0.65-17.51-12.89-17.51-12.89s-7.06-7.84-28.75-14.63
|
||||||
|
C8.79,23.31,5.4,9.72,5.4,9.72C4.61,29.72,26.96,37.95,26.96,37.95C15.33,38.08,5.4,29.06,5.4,29.06
|
||||||
|
c2.24,10.95,9.75,16.95,18.73,21.29c0.37,0.18,0.74,0.35,1.11,0.52C25.3,51.76,25.44,52.65,25.69,53.54z M18.23,102.31
|
||||||
|
c-0.69-1.2-1.34-2.5-1.94-3.85l0,0c-1.65-3.57-2.95-7.32-3.86-11.14l-0.45,0.06c0.23,6.37,1.35,12.62,3.32,18.59l0.02,0.07
|
||||||
|
l0.06,0.04c2.35,1.56,4.86,2.92,7.45,4.05l0.8,0.34l-0.53-0.69C21.32,107.45,19.68,104.93,18.23,102.31z M12.08,80.77
|
||||||
|
c-0.28-2.39-0.42-4.73-0.42-6.97c0-7.59,1.42-15.03,4.23-22.09l-0.41-0.19c-3.94,7.04-6.68,14.59-8.13,22.42l-0.01,0.08l0.04,0.07
|
||||||
|
c1.25,2.39,2.7,4.69,4.3,6.85l0.5,0.68L12.08,80.77z M26.74,115.5l-1.51-1.53l1.16,1.81c2.91,4.55,6.35,8.7,10.23,12.34l0.06,0.05
|
||||||
|
l0.08,0.01c1.34,0.12,2.69,0.18,4.04,0.18c1.11,0,2.23-0.04,3.34-0.12l0.87-0.06l-0.79-0.37
|
||||||
|
C37.68,124.76,31.81,120.62,26.74,115.5z M123.32,28.47c-9.07-9.07-20.38-15.08-32.69-17.51c-1.26-0.25-2.54-0.45-3.82-0.62
|
||||||
|
c-2.87-0.39-5.78-0.6-8.73-0.6c-1.59,0-3.18,0.07-4.75,0.19c-0.3,0.02-0.6,0.03-0.89,0.06c-1.09,0.09-2.17,0.22-3.24,0.37
|
||||||
|
c-7.45,1.03-14.59,3.35-21.16,6.85c-0.16,0.09-0.33,0.17-0.49,0.26c0.17-0.07,0.34-0.14,0.51-0.22
|
||||||
|
c6.78-2.91,14.08-4.58,21.56-4.91c1.68-0.07,3.38,0.21,4.91,0.92c1.88,0.88,3.38,2.25,4.01,3.74c0.18-0.66,0.24-1.35,0.14-2.04
|
||||||
|
c-0.13-0.91-0.51-1.74-1.07-2.46c2.85,0.24,5.66,0.68,8.41,1.3c3.76,0.85,6.99,3.42,8.45,6.99c0.36,0.89,0.61,1.8,0.72,2.7
|
||||||
|
c0.39-0.93,0.65-1.93,0.73-2.99c0.11-1.3-0.05-2.55-0.42-3.72c3.21,1.31,6.31,2.89,9.26,4.74l0,0.01
|
||||||
|
c0.02,0.01,0.04,0.02,0.05,0.03c0.11,0.07,0.22,0.14,0.33,0.21c3.81,2.42,6.42,6.44,6.85,10.94c0.13,1.32,0.07,2.63-0.18,3.85
|
||||||
|
c0.81-0.93,1.5-2,2.01-3.19c0.57-1.32,0.86-2.69,0.94-4.05c0.34,0.32,0.69,0.64,1.02,0.97c11.55,11.55,17.94,26.88,18,43.21
|
||||||
|
c0.06,15.81-6.02,31.16-16.92,42.61c-11.72,12.3-27.6,19.1-44.53,19.1c0,0,0,0-0.01,0c-8.61,0-17.04-1.8-24.77-5.2
|
||||||
|
c9.26,5.04,19.69,7.72,30.53,7.72c17.09,0,33.15-6.65,45.24-18.74C148.26,94,148.26,53.41,123.32,28.47z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 4.7 KiB |
@@ -0,0 +1,16 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 35 35" style="enable-background:new 0 0 35 35;" xml:space="preserve">
|
||||||
|
<title>codacy-white</title>
|
||||||
|
<g>
|
||||||
|
<path d="M5.7,14.3c0.8-3.1,2.9-5.8,5.7-7.4L8.7,2.3C4.7,4.7,1.8,8.5,0.6,13L5.7,14.3z"/>
|
||||||
|
<path d="M14.3,5.7c1-0.3,2.1-0.4,3.2-0.4V0c-1.5,0-3,0.2-4.5,0.6L14.3,5.7z"/>
|
||||||
|
<path d="M20.7,5.7c3.1,0.8,5.8,2.9,7.4,5.7l4.6-2.6c-2.3-4-6.1-6.9-10.6-8.1L20.7,5.7z"/>
|
||||||
|
<path d="M0,17.5c0,1.5,0.2,3,0.6,4.5l5.1-1.4c-0.3-1-0.4-2.1-0.4-3.2L0,17.5L0,17.5z"/>
|
||||||
|
<path d="M2.3,26.3c0.8,1.3,1.7,2.5,2.8,3.6l3.7-3.7c-0.8-0.8-1.4-1.6-1.9-2.5L2.3,26.3z"/>
|
||||||
|
<path d="M8.7,32.7c2.7,1.5,5.7,2.3,8.7,2.3v-5.2c-2.1,0-4.3-0.6-6.1-1.6L8.7,32.7z"/>
|
||||||
|
<path d="M28.1,23.6c-1.6,2.8-4.3,4.8-7.4,5.7l1.4,5.1c4.5-1.2,8.3-4.1,10.6-8.1L28.1,23.6z"/>
|
||||||
|
<path d="M34.4,22.2c0.8-3,0.8-6.1,0-9.1l-5.1,1.4c0.6,2.1,0.6,4.3,0,6.4L34.4,22.2z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
@@ -0,0 +1,69 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 24.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 32 32" enable-background="new 0 0 32 32" xml:space="preserve">
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<rect id="SVGID_1_" x="1" y="8.78" width="30.126" height="15.07"/>
|
||||||
|
</defs>
|
||||||
|
<clipPath id="SVGID_2_">
|
||||||
|
<use xlink:href="#SVGID_1_" overflow="visible"/>
|
||||||
|
</clipPath>
|
||||||
|
<path clip-path="url(#SVGID_2_)" d="M17.178,14.913c-0.11-0.564-0.387-1.083-0.794-1.489c-0.448-0.382-1.025-0.577-1.613-0.546
|
||||||
|
c-0.452-0.015-0.899,0.097-1.291,0.323c-0.366,0.197-0.681,0.478-0.918,0.819c-0.246,0.347-0.43,0.733-0.546,1.142
|
||||||
|
c-0.264,0.857-0.264,1.774,0,2.631c0.121,0.407,0.305,0.792,0.546,1.142c0.237,0.341,0.552,0.622,0.918,0.819
|
||||||
|
c0.396,0.214,0.84,0.325,1.291,0.323c0.307,0.007,0.612-0.052,0.893-0.174c0.275-0.121,0.527-0.289,0.745-0.496
|
||||||
|
c0.223-0.225,0.408-0.485,0.546-0.77c0.143-0.306,0.235-0.633,0.273-0.968h1.042c-0.097,0.904-0.489,1.75-1.117,2.408
|
||||||
|
c-0.596,0.596-1.39,0.869-2.358,0.869c-0.589,0.008-1.173-0.111-1.713-0.348c-0.488-0.214-0.915-0.547-1.241-0.968
|
||||||
|
c-0.352-0.413-0.614-0.895-0.769-1.415c-0.364-1.13-0.364-2.345,0-3.475c0.155-0.52,0.417-1.002,0.769-1.415
|
||||||
|
c0.345-0.402,0.767-0.731,1.241-0.968c0.536-0.248,1.122-0.367,1.713-0.348c0.827-0.017,1.637,0.236,2.308,0.72
|
||||||
|
c0.621,0.472,0.993,1.216,1.117,2.184H17.178z"/>
|
||||||
|
<path clip-path="url(#SVGID_2_)" d="M25.013,14.739c0.005-0.286-0.063-0.568-0.199-0.819c-0.115-0.222-0.276-0.416-0.472-0.571
|
||||||
|
c-0.207-0.16-0.443-0.277-0.695-0.348c-0.275-0.071-0.559-0.104-0.844-0.099c-0.234,0-0.467,0.025-0.695,0.074
|
||||||
|
c-0.228,0.046-0.446,0.129-0.645,0.248c-0.186,0.116-0.346,0.268-0.472,0.447c-0.127,0.209-0.188,0.451-0.174,0.695
|
||||||
|
c-0.011,0.205,0.05,0.407,0.174,0.571c0.115,0.157,0.258,0.291,0.422,0.397c0.183,0.106,0.374,0.197,0.571,0.273
|
||||||
|
c0.199,0.074,0.397,0.124,0.571,0.174l1.365,0.323c0.299,0.045,0.591,0.128,0.869,0.248c0.273,0.119,0.531,0.269,0.77,0.447
|
||||||
|
c0.227,0.192,0.413,0.429,0.546,0.695c0.155,0.298,0.232,0.632,0.223,0.968c0.015,0.413-0.098,0.82-0.323,1.167
|
||||||
|
c-0.199,0.323-0.471,0.595-0.794,0.794c-0.335,0.206-0.705,0.349-1.092,0.422c-0.392,0.078-0.791,0.12-1.191,0.124
|
||||||
|
c-0.993,0-1.787-0.223-2.408-0.695c-0.62-0.472-0.968-1.216-1.067-2.259h1.042c0.009,0.617,0.291,1.199,0.769,1.588
|
||||||
|
c0.506,0.359,1.117,0.543,1.737,0.521c0.258,0,0.516-0.025,0.769-0.074c0.262-0.049,0.513-0.142,0.745-0.273
|
||||||
|
c0.223-0.124,0.417-0.293,0.571-0.496c0.155-0.217,0.233-0.479,0.223-0.745c0.021-0.427-0.199-0.83-0.571-1.042
|
||||||
|
c-0.193-0.109-0.392-0.209-0.596-0.298c-0.22-0.078-0.443-0.144-0.67-0.199L22.158,16.7c-0.347-0.099-0.645-0.199-0.943-0.298
|
||||||
|
c-0.271-0.095-0.523-0.238-0.745-0.422c-0.212-0.165-0.382-0.378-0.496-0.62c-0.129-0.288-0.188-0.603-0.174-0.918
|
||||||
|
c-0.011-0.386,0.092-0.766,0.298-1.092c0.196-0.295,0.449-0.549,0.745-0.745c0.315-0.187,0.659-0.321,1.018-0.397
|
||||||
|
c0.365-0.09,0.741-0.132,1.117-0.124c0.404-0.007,0.806,0.052,1.191,0.174c0.354,0.094,0.685,0.264,0.968,0.496
|
||||||
|
c0.276,0.235,0.504,0.522,0.67,0.844c0.172,0.374,0.265,0.78,0.273,1.191h-1.067V14.739z"/>
|
||||||
|
</g>
|
||||||
|
<polygon fill="#3666F0" points="9.91,8.782 4.897,20.944 5.765,20.944 10.754,8.782 "/>
|
||||||
|
<g>
|
||||||
|
<defs>
|
||||||
|
<rect id="SVGID_3_" x="1" y="8.78" width="30.126" height="15.07"/>
|
||||||
|
</defs>
|
||||||
|
<clipPath id="SVGID_4_">
|
||||||
|
<use xlink:href="#SVGID_3_" overflow="visible"/>
|
||||||
|
</clipPath>
|
||||||
|
<path clip-path="url(#SVGID_4_)" fill="#3666F0" d="M2.365,16.054c0.154-0.132,0.28-0.292,0.372-0.472
|
||||||
|
c0.149-0.249,0.266-0.516,0.348-0.794c0.108-0.371,0.158-0.756,0.149-1.142v-2.308c0.004-0.208,0.021-0.415,0.05-0.621
|
||||||
|
c0.02-0.189,0.07-0.373,0.149-0.546c0.062-0.143,0.155-0.27,0.273-0.372c0.117-0.1,0.268-0.153,0.422-0.149H4.45V8.782H3.631
|
||||||
|
C3.203,8.758,2.795,8.966,2.564,9.328c-0.269,0.449-0.398,0.967-0.372,1.489v2.432c0,0.323-0.025,0.645-0.05,0.968
|
||||||
|
c-0.014,0.288-0.073,0.573-0.174,0.844c-0.082,0.222-0.209,0.425-0.372,0.596C1.436,15.81,1.221,15.891,1,15.881v0.869
|
||||||
|
c0.221-0.011,0.436,0.07,0.596,0.223c0.171,0.165,0.299,0.369,0.372,0.596c0.089,0.274,0.147,0.557,0.174,0.844
|
||||||
|
c0.025,0.323,0.05,0.645,0.05,0.968v2.408c-0.026,0.522,0.104,1.04,0.372,1.489c0.235,0.357,0.64,0.565,1.067,0.546H4.45v-0.025
|
||||||
|
v-0.05v-0.819H4.127c-0.155,0.008-0.307-0.045-0.422-0.149c-0.11-0.109-0.203-0.234-0.273-0.372
|
||||||
|
C3.35,22.237,3.3,22.052,3.283,21.862c-0.029-0.214-0.045-0.429-0.05-0.645v-2.283c0.008-0.386-0.043-0.771-0.149-1.142
|
||||||
|
c-0.082-0.278-0.199-0.545-0.348-0.794c-0.099-0.176-0.224-0.335-0.372-0.472c-0.081-0.086-0.172-0.162-0.273-0.223v-0.025
|
||||||
|
C2.142,16.228,2.241,16.154,2.365,16.054"/>
|
||||||
|
<path clip-path="url(#SVGID_4_)" fill="#3666F0" d="M28.495,8.782c0.427-0.019,0.832,0.189,1.067,0.546
|
||||||
|
c0.269,0.449,0.398,0.967,0.372,1.489v2.432c0,0.323,0.025,0.645,0.05,0.968c0.026,0.287,0.085,0.57,0.174,0.844
|
||||||
|
c0.073,0.226,0.201,0.431,0.372,0.596c0.159,0.153,0.375,0.234,0.596,0.223v0.869c-0.221-0.011-0.436,0.07-0.596,0.223
|
||||||
|
c-0.163,0.171-0.29,0.374-0.372,0.596c-0.101,0.271-0.159,0.555-0.174,0.844c-0.025,0.323-0.05,0.645-0.05,0.968v2.432
|
||||||
|
c0.026,0.522-0.104,1.04-0.372,1.489c-0.231,0.362-0.639,0.57-1.067,0.546h-0.819v-0.869h0.323
|
||||||
|
c0.154,0.004,0.304-0.049,0.422-0.149c0.118-0.102,0.211-0.229,0.273-0.372c0.082-0.172,0.132-0.357,0.149-0.546
|
||||||
|
c0.03-0.214,0.046-0.429,0.05-0.645v-2.283c-0.01-0.386,0.041-0.771,0.149-1.142c0.082-0.278,0.199-0.545,0.347-0.794
|
||||||
|
c0.092-0.18,0.219-0.34,0.372-0.471c0.124-0.099,0.223-0.174,0.273-0.223v-0.025c-0.101-0.062-0.193-0.137-0.273-0.223
|
||||||
|
c-0.148-0.137-0.273-0.296-0.372-0.472c-0.144-0.251-0.261-0.518-0.347-0.794c-0.106-0.371-0.157-0.756-0.149-1.142v-2.308
|
||||||
|
c-0.003-0.208-0.02-0.415-0.05-0.62c-0.023-0.188-0.073-0.372-0.149-0.546c-0.071-0.138-0.163-0.264-0.273-0.372
|
||||||
|
c-0.117-0.1-0.268-0.153-0.422-0.149h-0.323V8.832h0.819V8.782z"/>
|
||||||
|
</g>
|
||||||
|
<rect x="27.676" y="8.782" fill="#3666F0" width="0.819" height="0.099"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 5.7 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<svg width="95" height="63" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" overflow="hidden"><defs><clipPath id="clip0"><rect x="979" y="281" width="95" height="63"/></clipPath></defs><g clip-path="url(#clip0)" transform="translate(-979 -281)"><path d="M0.495362 32.6809 16.4466 32.6809 16.4466 36.8041 5.29445 36.8041 5.29445 41.7043 16.2098 41.7043 16.2098 45.8261 5.29445 45.8261 5.29445 55.2206 0.495362 55.2206Z" transform="matrix(1 0 0 1.01243 979.012 281)"/><path d="M17.6294 47.0435C17.6294 42.4134 20.8731 38.4938 26.247 38.4938 31.6541 38.4938 34.8978 42.4134 34.8978 47.0435 34.8978 51.7069 31.6541 55.6264 26.247 55.6264 20.8731 55.6264 17.6294 51.7025 17.6294 47.0435ZM30.4366 47.0435C30.4366 44.5089 28.9173 42.3123 26.2484 42.3123 23.5795 42.3123 22.0963 44.5089 22.0963 47.0435 22.0963 49.6113 23.5824 51.8094 26.2528 51.8094 28.9231 51.8094 30.4366 49.6113 30.4366 47.0435Z" transform="matrix(1 0 0 1.01243 979.012 281)"/><path d="M37.0612 38.8997 41.3534 38.8997 41.3534 41.1295C42.5087 39.6766 44.5306 38.5299 46.5525 38.5299L46.5525 42.7181C46.1644 42.6295 45.7677 42.584 45.3697 42.5824 43.95 42.5824 42.0581 43.394 41.349 44.4411L41.349 55.2206 37.0612 55.2206Z" transform="matrix(1 0 0 1.01243 979.012 281)"/><path d="M50.4027 51.1667 50.4027 42.6459 47.7064 42.6459 47.7064 38.891 50.4027 38.891 50.4027 34.4385 54.7354 34.4385 54.7354 38.8997 58.0469 38.8997 58.0469 42.6546 54.7354 42.6546 54.7354 50.02C54.7354 51.031 55.2755 51.8108 56.2214 51.8108 56.8641 51.8108 57.4721 51.574 57.709 51.3386L58.6203 54.5823C57.979 55.16 56.8295 55.6293 55.0386 55.6293 52.0318 55.6264 50.4027 54.0725 50.4027 51.1667Z" transform="matrix(1 0 0 1.01243 979.012 281)"/><path d="M59.533 33.9388C59.5282 32.5199 60.6746 31.3657 62.0936 31.3609 63.5125 31.3561 64.6667 32.5025 64.6715 33.9215 64.6762 35.3404 63.5298 36.4946 62.1109 36.4994 62.1076 36.4994 62.1041 36.4994 62.1008 36.4994 60.69 36.4884 59.5479 35.3495 59.533 33.9388ZM59.9663 38.9069 64.2671 38.9069 64.2671 55.2264 59.9735 55.2264Z" transform="matrix(1 0 0 1.01243 979.012 281)"/><path d="M68.4553 42.6502 65.7517 42.6502 65.7517 38.8953 68.4553 38.8953 68.4553 38.0158C68.4553 34.4674 70.753 32.3386 73.9635 32.3386 75.1795 32.3386 76.2944 32.6087 77.0729 33.0145L76.1934 36.056C75.7716 35.8179 75.2923 35.701 74.8083 35.7181 73.5909 35.7181 72.7865 36.5297 72.7865 38.0837L72.7865 38.8953 76.098 38.8953 76.098 42.6502 72.7879 42.6502 72.7879 55.2148 68.4553 55.2148Z" transform="matrix(1 0 0 1.01243 979.012 281)"/><path d="M80.3166 58.0267C81.4315 58.0267 82.1752 57.722 82.5811 56.8439L83.1862 55.4575 76.5659 38.8997 81.1643 38.8997 85.4189 50.2583 89.6851 38.8997 94.3066 38.8997 86.6364 57.8909C85.4189 60.9657 83.257 61.7773 80.4523 61.8452 79.737 61.8309 79.0244 61.7516 78.3235 61.6083L78.9648 57.7552C79.3944 57.9294 79.853 58.0214 80.3166 58.0267Z" transform="matrix(1 0 0 1.01243 979.012 281)"/><path d="M22.5166 12.2757C22.519 17.9292 17.9379 22.5141 12.2844 22.5166 12.2815 22.5166 12.2786 22.5166 12.2757 22.5166L0 22.5166 0 12.2757ZM12.2757 10.2351 12.2757 10.2351C17.9284 10.2383 22.5134 5.65845 22.5166 0.00577884 22.5166 0.00385269 22.5166 0.00192654 22.5166 3.96827e-07L0 0 0 10.2351Z" fill="#F42147" transform="matrix(1 0 0 1.01243 979.012 281)"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 3.2 KiB |
@@ -0,0 +1,34 @@
|
|||||||
|
<svg xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" id="svg79" xml:space="preserve" width="533.33331" height="533.33331" viewBox="0 0 533.33331 533.33331" style="color: #23292e;"><title>microsoft</title>
|
||||||
|
<metadata id="metadata85">
|
||||||
|
<rdf:rdf>
|
||||||
|
<cc:work rdf:about="">
|
||||||
|
<dc:format>
|
||||||
|
image/svg+xml
|
||||||
|
</dc:format>
|
||||||
|
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"></dc:type>
|
||||||
|
<dc:title></dc:title>
|
||||||
|
</cc:work>
|
||||||
|
</rdf:rdf>
|
||||||
|
</metadata>
|
||||||
|
<defs id="defs83">
|
||||||
|
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath105">
|
||||||
|
<path d="M 0,400 H 400 V 0 H 0 Z" id="path103"></path>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath119">
|
||||||
|
<path d="M 80.797,80.296 H 319.705 V 319.204 H 80.797 Z" id="path117"></path>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath253">
|
||||||
|
<path d="M 0,400 H 400 V 0 H 0 Z" id="path251"></path>
|
||||||
|
</clipPath>
|
||||||
|
<clipPath clipPathUnits="userSpaceOnUse" id="clipPath403">
|
||||||
|
<path d="M 0,400 H 400 V 0 H 0 Z" id="path401"></path>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
<g id="g87" transform="matrix(1.3333333,0,0,-1.3333333,0,533.33333)">
|
||||||
|
<path d="M 0,0 H 400 V 400 H 0 Z" style="fill-opacity: 1; fill-rule: nonzero; stroke: none;" id="path89" fill="#FFFFFF"></path>
|
||||||
|
<path d="M 194.342,205.658 H 80.796 v 113.546 h 113.546 z" style="fill-opacity: 1; fill-rule: nonzero; stroke: none;" id="path91" fill="#F25022"></path>
|
||||||
|
<path d="M 319.704,205.658 H 206.158 v 113.546 h 113.546 z" style="fill-opacity: 1; fill-rule: nonzero; stroke: none;" id="path93" fill="#7FBA00"></path>
|
||||||
|
<path d="M 194.342,80.296 H 80.796 v 113.546 h 113.546 z" style="fill-opacity: 1; fill-rule: nonzero; stroke: none;" id="path95" fill="#00A4EF"></path>
|
||||||
|
<path d="M 319.704,80.296 H 206.158 v 113.546 h 113.546 z" style="fill-opacity: 1; fill-rule: nonzero; stroke: none;" id="path97" fill="#FFB900"></path>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.1 KiB |
@@ -0,0 +1,114 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="128px" height="128px" viewBox="0 0 128 128" enable-background="new 0 0 128 128" xml:space="preserve"> <image id="image0" width="128" height="128" x="0" y="0"
|
||||||
|
href="data:image/png;base64,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
|
||||||
|
YWR5ccllPAAAAABJRU5ErkJggg==" />
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 8.7 KiB |
@@ -0,0 +1,755 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="600px" height="600px" viewBox="0 0 600 600" enable-background="new 0 0 600 600" xml:space="preserve"> <image id="image0" width="600" height="600" x="0" y="0"
|
||||||
|
href="data:image/png;base64,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
|
||||||
|
KzAwOjAwlR64RQAAAABJRU5ErkJggg==" />
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 57 KiB |
@@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 25.4.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 720 720" style="enable-background:new 0 0 720 720;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#0099FF;}
|
||||||
|
</style>
|
||||||
|
<g>
|
||||||
|
<path class="st0" d="M699,316.2L567.8,88.6c-15.6-27.1-44.7-43.9-76-43.9H360.3H228.4c-31.2,0-60.2,16.8-75.9,43.7L21.1,315.1
|
||||||
|
c-15.7,27.1-15.7,60.8,0,88l65.6,113.2c0.2,0.3,0.3,0.7,0.5,1l94.4,158h310.2c31.3,0,60.4-16.8,76-43.9L699,403.8
|
||||||
|
C714.6,376.8,714.5,343.3,699,316.2z M65.4,340.8l131.4-226.7c6.5-11.2,18.6-18.2,31.6-18.2h87.5L109.4,453.3l-44-75.9
|
||||||
|
C58.9,366.1,58.9,352.1,65.4,340.8z M443.6,268.1l53.1,91.9l-151.3,264H237.5L443.6,268.1z M654.6,378.3L523.5,605.8
|
||||||
|
c-6.5,11.3-18.6,18.3-31.6,18.3h-87.4l144-251.4c1.4-2.4,2.3-5,2.9-7.6c0-0.1,0-0.2,0.1-0.3c0.1-0.3,0.1-0.6,0.1-0.9
|
||||||
|
c0-0.2,0.1-0.5,0.1-0.7c0-0.4,0.1-0.7,0.1-1.1c0-0.2,0-0.4,0.1-0.6c0-0.4,0-0.7,0-1.1c0-0.2,0-0.4,0-0.6c0-0.4,0-0.7,0-1.1
|
||||||
|
c0-0.2,0-0.4,0-0.5c0-0.4-0.1-0.8-0.1-1.2c0-0.1,0-0.3,0-0.4c0-0.3-0.1-0.6-0.1-0.9c0-0.3-0.1-0.5-0.1-0.8
|
||||||
|
c-0.1-0.3-0.1-0.6-0.2-0.9c-0.1-0.3-0.1-0.5-0.2-0.8c-0.1-0.4-0.2-0.7-0.3-1.1c-0.1-0.2-0.1-0.3-0.2-0.5c-0.5-1.6-1.2-3.1-2.1-4.6
|
||||||
|
l-82.6-143c-1.1-2-2.5-3.8-4.1-5.3c-4.7-4.7-11.2-7.5-18-7.5h0h0c-1.5,0-3,0.1-4.4,0.4c-0.4,0.1-0.7,0.1-1.1,0.2
|
||||||
|
c-5.8,1.3-11,4.5-14.6,9.1c-0.1,0.1-0.1,0.1-0.2,0.2c-0.1,0.2-0.2,0.3-0.4,0.5c-0.5,0.7-1.1,1.5-1.5,2.3L193.1,598.5l-54.2-94
|
||||||
|
L375,95.9h116.8c13,0,25.1,7,31.6,18.3l131.2,227.6C661.1,353.1,661.1,367,654.6,378.3z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,16 @@
|
|||||||
|
<svg width="56" height="56" viewBox="0 0 56 56" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0)">
|
||||||
|
<path d="M8.79286 56.16C10.0629 56.16 11.0329 55.74 11.5229 55.37V53.81H11.5129C10.7829 54.36 9.99286 54.76 8.90286 54.76C7.35286 54.76 6.57286 53.78 6.57286 52.53C6.57286 51.22 7.41286 50.24 8.91286 50.24C10.0229 50.24 10.7629 50.73 11.5129 51.23H11.5229V49.67C11.0129 49.27 10.0929 48.84 8.94286 48.84C6.32286 48.84 4.99286 50.6 4.99286 52.54C4.99286 54.44 6.10286 56.16 8.79286 56.16Z" fill="white"/>
|
||||||
|
<path d="M14.8554 56H20.3354L20.3854 54.58H16.3954V49H14.8554V56Z" fill="white"/>
|
||||||
|
<path d="M26.6253 56.16C28.9853 56.16 30.4753 54.72 30.4753 52.5C30.4753 50.28 28.9853 48.84 26.6253 48.84C24.2653 48.84 22.7753 50.28 22.7753 52.5C22.7753 54.72 24.2653 56.16 26.6253 56.16ZM26.6153 54.77C25.1653 54.77 24.3553 53.91 24.3553 52.5C24.3553 51.09 25.1853 50.23 26.6353 50.23C28.0853 50.23 28.8953 51.09 28.8953 52.5C28.8953 53.91 28.0653 54.77 26.6153 54.77Z" fill="white"/>
|
||||||
|
<path d="M37.0408 56.16C38.9208 56.16 40.4108 55.39 40.4108 53.25V49H38.8708V53.28C38.8708 54.39 38.0008 54.74 37.0608 54.74C36.1208 54.74 35.2508 54.37 35.2508 53.23V49H33.7108V53.3C33.7108 55.38 35.1608 56.16 37.0408 56.16Z" fill="white"/>
|
||||||
|
<path d="M44.0534 56H47.4834C49.6834 56 51.0034 54.67 51.0034 52.49C51.0034 50.3 49.6834 49 47.4834 49H44.0534V56ZM45.5934 54.61V50.39H47.4734C48.7134 50.39 49.4234 51.07 49.4234 52.51C49.4234 53.96 48.7134 54.61 47.4734 54.61H45.5934Z" fill="white"/>
|
||||||
|
<path d="M33.2199 26.6697V8.14819L43 26.6697H33.2199Z" fill="#54BEE4"/>
|
||||||
|
<path d="M33.2151 8.14832L23.435 26.6698H33.2151V40L13 20L33.2151 0V8.14832Z" fill="#54BEE4"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0">
|
||||||
|
<rect width="56" height="56" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<svg width="2119" height="2500" viewBox="0 0 256 302" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMidYMid"><path d="M248.495 128.68v-9.683c0-10.596-8.669-19.268-19.267-19.268H26.772c-10.596 0-19.267 8.672-19.267 19.268v9.684C3.019 131.433 0 136.367 0 141.987v25.905c0 5.62 3.02 10.556 7.505 13.309v10.05c0 10.596 8.671 19.267 19.267 19.267h202.456c10.598 0 19.267-8.671 19.267-19.267V181.2c4.488-2.753 7.505-7.69 7.505-13.31v-25.904c0-5.62-3.017-10.556-7.505-13.306zM128.758 0C74.194 0 29.18 40.77 22.439 93.501h212.638C228.335 40.77 183.322 0 128.757 0zM95.969 237.236h63.296l6.463 7.482 9.72-8.395-10.304-11.932H90.088l-10.305 11.932 9.722 8.395 6.464-7.482zm109.6-22.818v40.984c0 11.264-9.217 20.482-20.481 20.482H173.94v-.04c-2.44 0-4.595-1.142-6.03-2.895h-.028l-13.33-17.026-.014.012c-1.424-1.845-3.628-3.057-6.133-3.074-.018 0-.033-.005-.05-.005-.015 0-.03.005-.048.005h-38.59c-.017 0-.032-.005-.047-.005-.018 0-.033.005-.05.005-2.321.015-4.378 1.06-5.804 2.675l-.028-.012-13.64 17.425h-.02c-1.436 1.753-3.59 2.895-6.031 2.895v.04H72.939c-11.264 0-20.481-9.218-20.481-20.482v-40.984H27.426v41.1c0 25.033 20.481 45.515 45.513 45.515h112.156c25.035 0 45.514-20.482 45.514-45.514v-41.101h-25.04z" fill="#0A0B09"/><path d="M210.785 167.62H45.217c-7.82 0-14.217-6.398-14.217-14.218s6.398-14.218 14.217-14.218h165.568c7.817 0 14.215 6.398 14.215 14.218s-6.398 14.217-14.215 14.217" fill="#D7252C"/></svg>
|
||||||
|
After Width: | Height: | Size: 1.4 KiB |
@@ -0,0 +1,3 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid meet" viewBox="0 0 650 650" width="650" height="650"><defs><path d="M78.18 80.28C-17.91 176.41 -17.91 332.82 78.18 428.96C163.77 514.53 297.08 523.7 393.13 456.88C395.15 466.44 399.77 475.57 407.21 483C421.21 497 533.18 608.98 547.18 622.98C567.58 643.33 600.54 643.33 620.83 622.98C641.21 602.6 641.21 569.64 620.83 549.32C606.84 535.32 494.86 423.31 480.86 409.31C473.47 401.93 464.32 397.29 454.76 395.27C521.62 299.2 512.45 165.91 426.84 80.28C330.73 -15.83 174.3 -15.83 78.18 80.28ZM122.37 384.77C50.66 313.01 50.66 196.25 122.37 124.49C194.11 52.76 310.89 52.76 382.65 124.49C454.4 196.25 454.4 313.01 382.65 384.77C310.89 456.52 194.11 456.52 122.37 384.77Z" id="ax51glKjl"></path><path d="M252.87 68.79C161.9 68.79 86.31 134.62 71.12 221.25C88.61 221.26 102.78 235.44 102.78 252.93C102.78 270.43 88.6 284.61 71.1 284.61C71.06 284.61 71.03 284.61 70.99 284.61C85.85 371.63 161.62 437.86 252.87 437.86C354.79 437.86 437.41 355.24 437.41 253.33C437.41 151.41 354.79 68.79 252.87 68.79" id="b16WydrtxU"></path><path d="M103.23 253.33C103.23 271.12 88.79 285.57 70.99 285.57C53.19 285.57 38.75 271.12 38.75 253.33C38.75 235.53 53.19 221.08 70.99 221.08C88.79 221.08 103.23 235.53 103.23 253.33Z" id="a3fSdH2Na6"></path><path d="M94.3 253.33C94.3 266.2 83.87 276.64 70.99 276.64C58.11 276.64 47.68 266.2 47.68 253.33C47.68 240.45 58.11 230.01 70.99 230.01C83.87 230.01 94.3 240.45 94.3 253.33" id="b39iKYr0O"></path><path d="M194.28 274.58L175.29 274.58C154.64 243.09 143.17 225.6 140.87 222.1C138.85 219.03 137.45 216.72 136.68 215.17C136.65 215.17 136.47 215.17 136.45 215.17C136.76 218.27 136.91 222.78 136.91 228.68C136.91 231.74 136.91 247.04 136.91 274.58L119.15 274.58L119.15 191.05L139.41 191.05L172.56 241.9L176.75 248.72C176.89 248.72 176.97 248.72 176.98 248.72C176.67 246.7 176.52 242.87 176.52 237.24C176.52 234.16 176.52 218.77 176.52 191.05L194.28 191.05L194.28 274.58ZM263.48 274.58L213.39 274.58L213.39 191.05L261.55 191.05L261.55 206.37L232.2 206.37L232.2 224.95L259.51 224.95L259.51 240.21L232.2 240.21L232.2 259.32L263.48 259.32L263.48 274.58ZM335.52 206.37L311.7 206.37L311.7 274.58L292.83 274.58L292.83 206.37L269.13 206.37L269.13 191.05L335.52 191.05L335.52 206.37Z" id="h2U8ed98JX"></path></defs><g><g><g><g><filter id="shadow9140395" x="-1.48" y="0.59" width="645.3" height="645.35" filterUnits="userSpaceOnUse" primitiveUnits="userSpaceOnUse"><feFlood></feFlood><feComposite in2="SourceAlpha" operator="in"></feComposite><feGaussianBlur stdDeviation="1"></feGaussianBlur><feOffset dx="0.1" dy="0.1" result="afterOffset"></feOffset><feFlood flood-color="#000000" flood-opacity="0.5"></feFlood><feComposite in2="afterOffset" operator="in"></feComposite><feMorphology operator="dilate" radius="0.5"></feMorphology><feComposite in2="SourceAlpha" operator="out"></feComposite></filter><path d="M78.18 80.28C-17.91 176.41 -17.91 332.82 78.18 428.96C163.77 514.53 297.08 523.7 393.13 456.88C395.15 466.44 399.77 475.57 407.21 483C421.21 497 533.18 608.98 547.18 622.98C567.58 643.33 600.54 643.33 620.83 622.98C641.21 602.6 641.21 569.64 620.83 549.32C606.84 535.32 494.86 423.31 480.86 409.31C473.47 401.93 464.32 397.29 454.76 395.27C521.62 299.2 512.45 165.91 426.84 80.28C330.73 -15.83 174.3 -15.83 78.18 80.28ZM122.37 384.77C50.66 313.01 50.66 196.25 122.37 124.49C194.11 52.76 310.89 52.76 382.65 124.49C454.4 196.25 454.4 313.01 382.65 384.77C310.89 456.52 194.11 456.52 122.37 384.77Z" id="bPSRIZres" fill="white" fill-opacity="1" stroke="black" stroke-width="2%"></path></g><use xlink:href="#ax51glKjl" opacity="1" fill="#ffffff" fill-opacity="1"></use></g><g><use xlink:href="#b16WydrtxU" opacity="1" fill="#68217a" fill-opacity="1"></use><g><use xlink:href="#b16WydrtxU" opacity="1" fill-opacity="0" stroke="#000000" stroke-width="1" stroke-opacity="0"></use></g></g><g><use xlink:href="#a3fSdH2Na6" opacity="1" fill="#ffffff" fill-opacity="1"></use></g><g><use xlink:href="#b39iKYr0O" opacity="1" fill="#cf18fd" fill-opacity="1"></use><g><use xlink:href="#b39iKYr0O" opacity="1" fill-opacity="0" stroke="#000000" stroke-width="1" stroke-opacity="0"></use></g></g><g><use xlink:href="#h2U8ed98JX" opacity="1" fill="#ffffff" fill-opacity="1"></use><g><use xlink:href="#h2U8ed98JX" opacity="1" fill-opacity="0" stroke="#000000" stroke-width="1" stroke-opacity="0"></use></g></g></g></g></svg>
|
||||||
|
After Width: | Height: | Size: 4.5 KiB |
@@ -0,0 +1,4 @@
|
|||||||
|
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M26.8269 1.44335C30.028 -0.481118 33.972 -0.481117 37.1731 1.44335L54.8269 12.0567C58.028 13.9812 60 17.5377 60 21.3867V42.6133C60 46.4623 58.028 50.0188 54.8269 51.9433L37.1731 62.5567C33.972 64.4811 30.028 64.4811 26.8269 62.5567L9.17306 51.9433C5.97196 50.0188 4 46.4623 4 42.6133V21.3867C4 17.5377 5.97196 13.9812 9.17306 12.0567L26.8269 1.44335ZM34.5742 12.546C32.9813 11.5861 31.0187 11.5861 29.4257 12.546L17.2409 19.8883C15.648 20.8481 14.6667 22.6221 14.6667 24.5418V39.2263C14.6667 41.1461 15.648 42.92 17.2409 43.8799L29.4257 51.2221C31.0187 52.182 32.9813 52.182 34.5742 51.2221L46.7591 43.8799C48.352 42.92 49.3333 41.1461 49.3333 39.2263V24.5418C49.3333 22.6221 48.352 20.8481 46.7591 19.8883L34.5742 12.546Z" fill="#10222F"/>
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M26.8269 1.44335C30.028 -0.481118 33.972 -0.481117 37.1731 1.44335L54.8269 12.0567C58.028 13.9812 60 17.5377 60 21.3867V42.6133C60 46.4623 58.028 50.0188 54.8269 51.9433L37.1731 62.5567C33.972 64.4811 30.028 64.4811 26.8269 62.5567L9.17306 51.9433C5.97196 50.0188 4 46.4623 4 42.6133V21.3867C4 17.5377 5.97196 13.9812 9.17306 12.0567L26.8269 1.44335ZM34.5742 12.546C32.9813 11.5861 31.0187 11.5861 29.4257 12.546L17.2409 19.8883C15.648 20.8481 14.6667 22.6221 14.6667 24.5418V39.2263C14.6667 41.1461 15.648 42.92 17.2409 43.8799L29.4257 51.2221C31.0187 52.182 32.9813 52.182 34.5742 51.2221L46.7591 43.8799C48.352 42.92 49.3333 41.1461 49.3333 39.2263V24.5418C49.3333 22.6221 48.352 20.8481 46.7591 19.8883L34.5742 12.546Z" fill="#0974D7"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.6 KiB |