mirror of
https://github.com/sorenisanerd/gotty.git
synced 2024-11-24 04:54:25 +00:00
Compare commits
1 Commits
b5e3051156
...
f189dfc503
Author | SHA1 | Date | |
---|---|---|---|
|
f189dfc503 |
46
.github/workflows/pre-release.yaml
vendored
46
.github/workflows/pre-release.yaml
vendored
@ -1,42 +1,36 @@
|
|||||||
---
|
---
|
||||||
name: "pre-release"
|
name: "pre-release"
|
||||||
|
|
||||||
on: [push]
|
on:
|
||||||
|
push:
|
||||||
env:
|
branches:
|
||||||
IMAGE_NAME: ${{ github.repository }}
|
- "master"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
pre-release-docker:
|
pre-release-docker:
|
||||||
name: "Pre Release Docker"
|
name: "Pre Release Docker"
|
||||||
runs-on: "ubuntu-latest"
|
runs-on: "ubuntu-latest"
|
||||||
steps:
|
|
||||||
-
|
|
||||||
name: Docker meta
|
|
||||||
id: meta
|
|
||||||
uses: docker/metadata-action@v4
|
|
||||||
with:
|
|
||||||
images: ${{ env.IMAGE_NAME }}
|
|
||||||
tags: |
|
|
||||||
type=raw,value=latest,enable={{is_default_branch}}
|
|
||||||
type=sha,format=long
|
|
||||||
type=sha
|
|
||||||
type=semver,pattern=v{{major}}.{{minor}}.{{patch}}
|
|
||||||
type=semver,pattern=v{{major}}.{{minor}}
|
|
||||||
type=semver,pattern=v{{major}}
|
|
||||||
type=ref,event=tag
|
|
||||||
type=ref,event=branch
|
|
||||||
|
|
||||||
- uses: docker/setup-qemu-action@v2
|
|
||||||
- uses: docker/setup-buildx-action@v2
|
steps:
|
||||||
- uses: docker/login-action@v2
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- uses: docker/setup-qemu-action@v1
|
||||||
|
|
||||||
|
- uses: docker/setup-buildx-action@v1
|
||||||
|
|
||||||
|
- uses: docker/login-action@v1
|
||||||
with:
|
with:
|
||||||
username: "${{ secrets.DOCKER_HUB_USER }}"
|
username: "${{ secrets.DOCKER_HUB_USER }}"
|
||||||
password: "${{ secrets.DOCKER_HUB_TOKEN }}"
|
password: "${{ secrets.DOCKER_HUB_TOKEN }}"
|
||||||
|
|
||||||
- name: "Build and push docker image"
|
- name: "Build and push docker image"
|
||||||
uses: docker/build-push-action@v4
|
uses: docker/build-push-action@v2
|
||||||
with:
|
with:
|
||||||
|
context: .
|
||||||
|
file: ./Dockerfile
|
||||||
platforms: linux/amd64,linux/arm/v7,linux/arm64
|
platforms: linux/amd64,linux/arm/v7,linux/arm64
|
||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: "${{ secrets.DOCKER_REPO }}:latest"
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
|
||||||
|
File diff suppressed because one or more lines are too long
@ -1,6 +1,6 @@
|
|||||||
/*!
|
/*!
|
||||||
* Bootstrap v5.3.2 (https://getbootstrap.com/)
|
* Bootstrap v5.2.0 (https://getbootstrap.com/)
|
||||||
* Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
* Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
@ -26,7 +26,8 @@ bootstrap
|
|||||||
MIT
|
MIT
|
||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
|
|
||||||
Copyright (c) 2011-2023 The Bootstrap Authors
|
Copyright (c) 2011-2022 Twitter, Inc.
|
||||||
|
Copyright (c) 2011-2022 The Bootstrap Authors
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
4523
js/package-lock.json
generated
4523
js/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -3,29 +3,29 @@
|
|||||||
"version": "1.4.0",
|
"version": "1.4.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/bootstrap": "^5.2.10",
|
"@types/bootstrap": "^5.1.9",
|
||||||
"compression-webpack-plugin": "^9.2.0",
|
"compression-webpack-plugin": "^9.2.0",
|
||||||
"license-loader": "^0.5.0",
|
"license-loader": "^0.5.0",
|
||||||
"license-webpack-plugin": "^4.0.2",
|
"license-webpack-plugin": "^4.0.2",
|
||||||
"purgecss": "^4.1.3",
|
"purgecss": "^4.1.3",
|
||||||
"sass": "^1.70.0",
|
"sass": "^1.54.5",
|
||||||
"sass-loader": "^12.6.0",
|
"sass-loader": "^12.6.0",
|
||||||
"terser-webpack-plugin": "^5.3.10",
|
"terser-webpack-plugin": "^5.3.1",
|
||||||
"ts-loader": "^8.4.0",
|
"ts-loader": "^8.3.0",
|
||||||
"typescript": "^4.9.5",
|
"typescript": "^4.3.2",
|
||||||
"webpack": "^5.90.1",
|
"webpack": "^5.76.0",
|
||||||
"webpack-cli": "^4.10.0",
|
"webpack-cli": "^4.7.0",
|
||||||
"webpack-dev-server": "^4.15.1"
|
"webpack-dev-server": "^4.11.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@popperjs/core": "^2.11.8",
|
"@popperjs/core": "^2.11.5",
|
||||||
"bootstrap": "^5.3.2",
|
"bootstrap": "^5.1.3",
|
||||||
"css-loader": "^5.2.7",
|
"css-loader": "^5.2.6",
|
||||||
"debounce": "^1.2.1",
|
"debounce": "^1.2.1",
|
||||||
"preact": "^10.19.4",
|
"preact": "^10.7.1",
|
||||||
"react-bootstrap": "^2.10.1",
|
"react-bootstrap": "^2.2.3",
|
||||||
"style-loader": "^2.0.0",
|
"style-loader": "^2.0.0",
|
||||||
"xterm": "^4.19.0",
|
"xterm": "^4.12.0",
|
||||||
"xterm-addon-fit": "^0.5.0",
|
"xterm-addon-fit": "^0.5.0",
|
||||||
"xterm-addon-web-links": "^0.4.0",
|
"xterm-addon-web-links": "^0.4.0",
|
||||||
"xterm-addon-webgl": "^0.10.0",
|
"xterm-addon-webgl": "^0.10.0",
|
||||||
|
1
js/src/bootstrap.scss
vendored
1
js/src/bootstrap.scss
vendored
@ -6,7 +6,6 @@
|
|||||||
// Configuration
|
// Configuration
|
||||||
@import "functions";
|
@import "functions";
|
||||||
@import "variables";
|
@import "variables";
|
||||||
@import "variables-dark";
|
|
||||||
@import "maps";
|
@import "maps";
|
||||||
@import "mixins";
|
@import "mixins";
|
||||||
@import "utilities";
|
@import "utilities";
|
||||||
|
4
main.go
4
main.go
@ -3,7 +3,7 @@ package main
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io/ioutil"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
"os/signal"
|
"os/signal"
|
||||||
@ -68,7 +68,7 @@ func main() {
|
|||||||
|
|
||||||
if appOptions.Quiet {
|
if appOptions.Quiet {
|
||||||
log.SetFlags(0)
|
log.SetFlags(0)
|
||||||
log.SetOutput(io.Discard)
|
log.SetOutput(ioutil.Discard)
|
||||||
}
|
}
|
||||||
|
|
||||||
if c.IsSet("credential") {
|
if c.IsSet("credential") {
|
||||||
|
@ -6,10 +6,10 @@ import (
|
|||||||
"crypto/x509"
|
"crypto/x509"
|
||||||
"html/template"
|
"html/template"
|
||||||
"io/fs"
|
"io/fs"
|
||||||
|
"io/ioutil"
|
||||||
"log"
|
"log"
|
||||||
"net"
|
"net"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
|
||||||
"regexp"
|
"regexp"
|
||||||
"strings"
|
"strings"
|
||||||
noesctmpl "text/template"
|
noesctmpl "text/template"
|
||||||
@ -45,7 +45,7 @@ func New(factory Factory, options *Options) (*Server, error) {
|
|||||||
}
|
}
|
||||||
if options.IndexFile != "" {
|
if options.IndexFile != "" {
|
||||||
path := homedir.Expand(options.IndexFile)
|
path := homedir.Expand(options.IndexFile)
|
||||||
indexData, err = os.ReadFile(path)
|
indexData, err = ioutil.ReadFile(path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, errors.Wrapf(err, "failed to read custom index file at `%s`", path)
|
return nil, errors.Wrapf(err, "failed to read custom index file at `%s`", path)
|
||||||
}
|
}
|
||||||
@ -253,7 +253,7 @@ func (server *Server) setupHTTPServer(handler http.Handler) (*http.Server, error
|
|||||||
|
|
||||||
func (server *Server) tlsConfig() (*tls.Config, error) {
|
func (server *Server) tlsConfig() (*tls.Config, error) {
|
||||||
caFile := homedir.Expand(server.options.TLSCACrtFile)
|
caFile := homedir.Expand(server.options.TLSCACrtFile)
|
||||||
caCert, err := os.ReadFile(caFile)
|
caCert, err := ioutil.ReadFile(caFile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, errors.New("could not open CA crt file " + caFile)
|
return nil, errors.New("could not open CA crt file " + caFile)
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
package server
|
package server
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"io"
|
"io/ioutil"
|
||||||
|
|
||||||
"github.com/gorilla/websocket"
|
"github.com/gorilla/websocket"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
@ -31,7 +31,7 @@ func (wsw *wsWrapper) Read(p []byte) (n int, err error) {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
b, err := io.ReadAll(reader)
|
b, err := ioutil.ReadAll(reader)
|
||||||
if len(b) > len(p) {
|
if len(b) > len(p) {
|
||||||
return 0, errors.Wrapf(err, "Client message exceeded buffer size")
|
return 0, errors.Wrapf(err, "Client message exceeded buffer size")
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package utils
|
package utils
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"io/ioutil"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
"reflect"
|
"reflect"
|
||||||
@ -113,7 +114,7 @@ func ApplyConfigFile(filePath string, options ...interface{}) error {
|
|||||||
|
|
||||||
fileString := []byte{}
|
fileString := []byte{}
|
||||||
log.Printf("Loading config file at: %s", filePath)
|
log.Printf("Loading config file at: %s", filePath)
|
||||||
fileString, err := os.ReadFile(filePath)
|
fileString, err := ioutil.ReadFile(filePath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user