2023-04-17 13:52:29 +08:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
2024-08-13 10:56:07 +08:00
|
|
|
"net/http"
|
2024-08-12 16:54:18 +08:00
|
|
|
"os"
|
2023-04-17 13:52:29 +08:00
|
|
|
"time"
|
|
|
|
|
2024-08-13 10:56:07 +08:00
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
)
|
2024-08-13 09:28:33 +08:00
|
|
|
|
2023-04-17 13:52:29 +08:00
|
|
|
func main() {
|
2024-08-13 10:56:07 +08:00
|
|
|
r := gin.Default()
|
2023-04-17 13:52:29 +08:00
|
|
|
|
2024-08-13 10:56:07 +08:00
|
|
|
r.GET("/", func(c *gin.Context) {
|
|
|
|
username := readInputs()
|
|
|
|
c.String(http.StatusOK, fmt.Sprintf("username is %s\n", username))
|
2024-08-12 16:54:18 +08:00
|
|
|
|
2024-08-13 10:56:07 +08:00
|
|
|
err := writeOutputs("time", time.Now().Format("2006-01-02 15:04:05"))
|
|
|
|
if err != nil {
|
|
|
|
c.String(http.StatusInternalServerError, fmt.Sprintf("Error: %v\n", err))
|
|
|
|
return
|
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
r.Run() // 默认在 0.0.0.0:8080 启动服务
|
|
|
|
}
|
2024-08-13 09:26:15 +08:00
|
|
|
|
2024-08-12 16:54:18 +08:00
|
|
|
func readInputs() string {
|
|
|
|
username := os.Getenv("INPUT_USERNAME")
|
|
|
|
return username
|
|
|
|
}
|
|
|
|
|
|
|
|
func writeOutputs(k, v string) (err error) {
|
|
|
|
msg := fmt.Sprintf("%s=%s", k, v)
|
|
|
|
outputFilepath := os.Getenv("GITHUB_OUTPUT")
|
|
|
|
f, err := os.OpenFile(outputFilepath, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
|
|
|
|
if err != nil {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
defer func() {
|
|
|
|
if cErr := f.Close(); cErr != nil && err == nil {
|
|
|
|
err = cErr
|
|
|
|
}
|
|
|
|
}()
|
|
|
|
if _, err = f.Write([]byte(msg)); err != nil {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
return
|
2024-08-13 10:56:07 +08:00
|
|
|
}
|