hugo-sid / http-server-action

An action that spawns an http server to serve files.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

http-server-action


An action that spawns an http server to serve files.

Inputs

directory

Path that should be served (default is .) (optional)

port

Port that should be used (default is 8080) (optional)

no-cache

No-Cache determiantes wheter the server sets the Cache-Control header or not (default is false) (optional)

index-files

If set and directory is requested, look for those files, instead of show directory listing (default is EMPTY, sample is ["index.html", "index.htm"]) (optional)

allowed-methods

Throw HTTP-Error 405 on other methods than the methods given (default is ["GET", "HEAD"]) (optional)

content-types

A JSON object of content-types that should be served (optional) Default:

{
  "appcache": "text/cache-manifest",
  "css": "text/css",
  "gif": "image/gif",
  "html": "text/html",
  "ico": "image/x-icon",
  "jpeg": "image/jpeg",
  "jpg": "image/jpeg",
  "js": "text/javascript",
  "json": "application/json",
  "png": "image/png",
  "txt": "text/plain",
  "xml": "text/xml"
}

log

Create a log file with the given name (default is ``, which means no logging) (optional)

logTime

Include the time of access in the log file (default is true) (optional)

Example

steps:
  -
    name: Checkout code
    uses: actions/checkout@v2
  -
    name: Serve Files
    uses: Eun/http-server-action@v1
    with:
      directory: ${{ github.workspace }}
      port: 8080
      no-cache: false
      index-files: |
        ["index.html", "index.htm"]
      allowed-methods: |
        ["GET", "HEAD"]
      content-types: |
        {
          "appcache": "text/cache-manifest",
          "css": "text/css",
          "gif": "image/gif",
          "html": "text/html",
          "ico": "image/x-icon",
          "jpeg": "image/jpeg",
          "jpg": "image/jpeg",
          "js": "text/javascript",
          "json": "application/json",
          "png": "image/png",
          "txt": "text/plain",
          "xml": "text/xml"
        }
      log: "log.txt"
      logTime: "false"
  -
    run: |
      curl -vvvv http://localhost:8080/index.html
      cat log.txt

About

An action that spawns an http server to serve files.

License:MIT License


Languages

Language:JavaScript 100.0%