5 Commits

Author SHA1 Message Date
Easy
31106b5b8f 添加颜色和图标 2023-02-04 17:59:03 +08:00
Easy
60bd69bd20 更新readme 2023-02-04 17:47:32 +08:00
Easy
0467e78c9e publish 2023-02-04 17:34:29 +08:00
Easy
2fe12b59c5 publish 2023-02-04 17:32:33 +08:00
Easy
ab4a36126c publish 2023-02-04 17:31:24 +08:00
6 changed files with 39 additions and 172 deletions

View File

@@ -1,71 +0,0 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ main ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ main ]
schedule:
- cron: '31 7 * * 3'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'TypeScript' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://git.io/codeql-language-support
steps:
- name: Checkout repository
uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
source-root: src
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2

View File

@@ -10,8 +10,13 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- uses: josStorer/get-current-time@v2.0.2
id: current-time
with:
format: YYYYMMDD-HH
utcOffset: "+08:00"
- uses: ./ - uses: ./
with: with:
sendkey: ${{ secrets.sendkey }} sendkey: ${{ secrets.sendkey }}
title: "server酱Action更新啦" title: "server酱Action更新啦 ${{ steps.current-time.outputs.formattedTime }}"

115
README.md
View File

@@ -1,107 +1,24 @@
> ⚠️ 测试中,暂勿使用 # Server酱微信推送 GitHub Action
<p align="center">
<a href="https://github.com/actions/typescript-action/actions"><img alt="typescript-action status" src="https://github.com/actions/typescript-action/workflows/build-test/badge.svg"></a>
</p>
# Create a JavaScript Action using TypeScript
Use this template to bootstrap the creation of a TypeScript action.:rocket: ## 使用方法
This template includes compilation support, tests, a validation workflow, publishing, and versioning guidance. 1. 将 sendkey 添加到仓库的 Actions secrets 中,命名为 sendkey
If you are new, there's also a simpler introduction. See the [Hello World JavaScript Action](https://github.com/actions/hello-world-javascript-action) ![](images/20230204173837.png)
## Create an action from this template 2. 在 workflow 中使用,例子如下:
Click the `Use this Template` and provide the new repo details for your action ```yml
- uses: josStorer/get-current-time@v2.0.2
## Code in Main id: current-time
with:
> First, you'll need to have a reasonably modern version of `node` handy. This won't work with versions older than 9, for instance. format: YYYYMMDD-HH
utcOffset: "+08:00"
Install the dependencies - uses: easychen/github-action-server-chan@v1
```bash with:
$ npm install sendkey: ${{ secrets.sendkey }}
title: "server酱Action更新啦 ${{ steps.current-time.outputs.formattedTime }}"
desp: "可以为空。支持Markdown"
``` ```
Build the typescript and package it for distribution
```bash
$ npm run build && npm run package
```
Run the tests :heavy_check_mark:
```bash
$ npm test
PASS ./index.test.js
✓ throws invalid number (3ms)
wait 500 ms (504ms)
test runs (95ms)
...
```
## Change action.yml
The action.yml defines the inputs and output for your action.
Update the action.yml with your name, description, inputs and outputs for your action.
See the [documentation](https://help.github.com/en/articles/metadata-syntax-for-github-actions)
## Change the Code
Most toolkit and CI/CD operations involve async operations so the action is run in an async function.
```javascript
import * as core from '@actions/core';
...
async function run() {
try {
...
}
catch (error) {
core.setFailed(error.message);
}
}
run()
```
See the [toolkit documentation](https://github.com/actions/toolkit/blob/master/README.md#packages) for the various packages.
## Publish to a distribution branch
Actions are run from GitHub repos so we will checkin the packed dist folder.
Then run [ncc](https://github.com/zeit/ncc) and push the results:
```bash
$ npm run package
$ git add dist
$ git commit -a -m "prod dependencies"
$ git push origin releases/v1
```
Note: We recommend using the `--license` option for ncc, which will create a license file for all of the production node modules used in your project.
Your action is now published! :rocket:
See the [versioning documentation](https://github.com/actions/toolkit/blob/master/docs/action-versioning.md)
## Validate
You can now validate the action by referencing `./` in a workflow in your repo (see [test.yml](.github/workflows/test.yml))
```yaml
uses: ./
with:
milliseconds: 1000
```
See the [actions tab](https://github.com/actions/typescript-action/actions) for runs of this action! :rocket:
## Usage:
After testing you can [create a v1 tag](https://github.com/actions/toolkit/blob/master/docs/action-versioning.md) to reference the stable and latest V1 action

14
RoboFile.php Normal file
View File

@@ -0,0 +1,14 @@
<?php
/**
* This is project's console commands configuration for Robo task runner.
*
* @see https://robo.li/
*/
class RoboFile extends \Robo\Tasks
{
// define public methods as commands
public function publish($m = 'publish')
{
$this->_exec("yarn build && yarn package && git add . && git commit -m '$m' && git push ");
}
}

View File

@@ -1,6 +1,8 @@
name: 'ServerChan · Server酱通知' name: 'ServerChan · Server酱通知'
description: 'Send wechat notice via serverchan' description: 'Send wechat notice via serverchan'
author: 'EasyChen' author: 'EasyChen'
icon: 'message-square'
color: 'blue'
inputs: inputs:
sendkey: sendkey:
required: true required: true

BIN
images/20230204173837.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB