Usage template repository of traffic-to-badge GitHub Action, you can use repositories Insights/traffic
data to generate badges that include views and clones.
There are only one input must be set up and four inputs can be set to default without config. The default setting only supports running repository, and if repositories support is required, please refer to Usage for static_list
.
input | description | required | default |
---|---|---|---|
my_token | Personal access token to obtain the secret repository traffic data | ✔ | |
static_list | List of repositories which want to be got | ✖ | github.repository |
traffic_branch | Branch used to back up traffic data | ✖ | traffic |
views_color | Color value for the views badge background | ✖ | brightgreen |
clones_color | Color value for the clones badge background | ✖ | brightgreen |
views_week_color | Color value for the views in past week badge background | ✖ | brightgreen |
clones_week_color | Color value for the clones in past week badge background | ✖ | brightgreen |
total_views_color | Color value for the views badge background of all repositories | ✖ | brightgreen |
total_clones_color | Color value for the clones badge background of all repositories | ✖ | brightgreen |
total_views_week_color | Color value for the views in past week badge background of all repositories | ✖ | brightgreen |
total_clones_week_color | Color value for the clones in past week badge background of all repositories | ✖ | brightgreen |
logo | Logo or simple-icon to the left of the label | ✖ | github |
year | Year for license startup | ✖ |
repo-list-generator
: Default output repoList
do not include private
and fork
repositories.
name: traffic2badge
on:
push:
schedule:
- cron: '1 0 * * *'
jobs:
run:
name: Make GitHub Traffic to Badge
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/[email protected]
- name: Get Repo List
id: repo
uses: yi-Xu-0100/[email protected]
- name: Get Commit Message
id: message
uses: actions/[email protected]
env:
FULL_COMMIT_MESSAGE: '${{ github.event.head_commit.message }}'
with:
result-encoding: string
script: |
var message = `${process.env.FULL_COMMIT_MESSAGE}`;
core.info(message);
if (message != '') return message;
var time = new Date(Date.now()).toISOString();
core.info(time);
return `Get traffic data at ${time}`;
- name: Set traffic
id: traffic
uses: yi-Xu-0100/[email protected]
with:
my_token: ${{ secrets.TRAFFIC_TOKEN }}
static_list: '${{ steps.repo.outputs.repoList }}'
#(default) traffic_branch: traffic
#(default) views_color: brightgreen
#(default) clones_color: brightgreen
#(default) views_week_color: brightgreen
#(default) clones_week_color: brightgreen
#(default) total_views_color: brightgreen
#(default) total_clones_color: brightgreen
#(default) total_views_week_color: brightgreen
#(default) total_clones_week_color: brightgreen
#(default) logo: github
year: 2021
- name: Deploy
uses: peaceiris/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: ${{ steps.traffic.outputs.traffic_branch }}
publish_dir: ${{ steps.traffic.outputs.traffic_path }}
user_name: 'github-actions[bot]'
user_email: 'github-actions[bot]@users.noreply.github.com'
full_commit_message: ${{ steps.message.outputs.result }}
- name: Show traffic data
run: |
cd ${{ steps.traffic.outputs.traffic_path }}
ls -a
Explanation:
- The
repo-list-generator
generatesrepoList
forstatic_list
usage. - The
github-script
generates message for commit. - The
actions-gh-pages
publish traffic data totraffic_branch
. The options follow thisguide
. - The
TRAFFIC_TOKEN
needs to be generated, the guild in Generatemy_token
. - The
GITHUB_TOKEN
does not need to be generated,only reference it in your workflow file,and the guide in Using theGITHUB_TOKEN
in a workflow .