diff --git a/Docs/index.html b/Docs/index.html index 3a7bc84..bf38e97 100644 --- a/Docs/index.html +++ b/Docs/index.html @@ -3,7 +3,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - + @@ -41,8 +41,7 @@
  • 2.2.2. Install Docker
  • 2.2.3. Build Project and install project
  • 2.2.4. Add appropriate paths to .bashrc
  • -
  • 2.2.5. Set up configuration file
  • -
  • 2.2.6. Test if binary works
  • +
  • 2.2.5. Test if binary works
  • @@ -70,7 +69,7 @@
  • 3.0.17. Pulling plugin from a remote repo
  • 3.0.18. Deleting plugin from the plugin directory
  • 3.0.19. Added custom metadata about the current node
  • -
  • 3.0.20. MapPort and link to domain name
  • +
  • 3.0.20. MapPort and link to domain name
  • @@ -100,8 +99,8 @@
  • 5.3. Current languages supported
  • @@ -118,13 +117,22 @@
  • 9. Client mode
  • -
  • 10. Ideas for future potencial features +
  • 10. Blog posts +
  • +
  • 11. Ideas for future potencial features + @@ -231,7 +239,7 @@ Go API to create and interact with the containers. to install docker GPU

    -
    +
     // Do ensure that the docker command does not need sudo to run
     sudo chmod 666 /var/run/docker.sock
     
    @@ -246,8 +254,8 @@ To set up the internal dependencies and build the entire go code into a single binary

    -
    -make install
    +
    +make
     
    @@ -259,7 +267,7 @@ To set up P2PRC on Windows, simply run this batch file. Make sure you are not in admin mode when running this.

    -
    +
     .\install.bat
     
    @@ -270,31 +278,17 @@ are not in admin mode when running this.

    2.2.4. Add appropriate paths to .bashrc

    -
    +
     export P2PRC=/<PATH>/p2p-rendering-computation
     export PATH=/<PATH>/p2p-rendering-computation:${PATH}
     
    -
    -

    2.2.5. Set up configuration file

    -
    -
    -make configfile 
    -
    - -

    -Open the config file config.json and add the IPv6 address if you have -one. -

    -
    -
    -
    -

    2.2.6. Test if binary works

    +

    2.2.5. Test if binary works

    -
    +
     p2prc --help
     
    @@ -302,7 +296,7 @@ p2prc --help
    1. Output:
      -
      +
       NAME:
          p2p-rendering-computation - p2p cli application to create and access VMs in other servers
       
      @@ -365,7 +359,7 @@ GLOBAL OPTIONS:
       

      3.0.1. Start as a server

      -
      +
       p2prc -s 
       
      @@ -374,7 +368,7 @@ p2prc -s

      3.0.2. View server Specification

      -
      +
       p2prc --specs=<ip address>
       
      @@ -387,7 +381,7 @@ p2prc --specs=<ip address> use the --gpu if you know the other machine has a gpu.

      -
      +
       p2prc --touch=<server ip address> -p <number of ports> --gpu
       
      @@ -400,7 +394,7 @@ p2prc --touch=<server ip address> -p <number of ports> --gpu The docker id is present in the output where you create a container

      -
      +
       p2prc --rm=<server ip address> --id=<docker container id> 
       
      @@ -409,7 +403,7 @@ p2prc --rm=<server ip address> --id=<docker container id>

      3.0.5. Adding servers to ip table

      -
      +
       p2prc --as=<server ip address you want to add> 
       
      @@ -418,7 +412,7 @@ p2prc --as=<server ip address you want to add>

      3.0.6. Update ip table

      -
      +
       p2prc --us 
       
      @@ -427,7 +421,7 @@ p2prc --us

      3.0.7. List Servers

      -
      +
       p2prc --ls 
       
      @@ -436,7 +430,7 @@ p2prc --ls

      3.0.8. View Network interfaces

      -
      +
       p2prc --ni
       
      @@ -445,7 +439,7 @@ p2prc --ni

      3.0.9. Viewing Containers created Client side

      -
      +
       p2prc --tc
       
      @@ -454,7 +448,7 @@ p2prc --tc

      3.0.10. Running plugin

      -
      +
       p2prc --plugin <plugin name> --id <container id or group id>
       
      @@ -463,7 +457,7 @@ p2prc --plugin <plugin name> --id <container id or group id>

      3.0.11. Create group

      -
      +
       p2prc --cgroup
       
      @@ -472,7 +466,7 @@ p2prc --cgroup

      3.0.12. Add container to group

      -
      +
       p2prc --group <group id> --id <container id>
       
      @@ -481,7 +475,7 @@ p2prc --group <group id> --id <container id>

      3.0.13. View groups

      -
      +
       p2prc --groups
       
      @@ -490,7 +484,7 @@ p2prc --groups

      3.0.14. View specific group

      -
      +
       p2prc --group <group id>
       
      @@ -499,7 +493,7 @@ p2prc --group <group id>

      3.0.15. Delete container from group

      -
      +
       p2prc --rmcgroup --group <group id> --id <container id> 
       
      @@ -508,7 +502,7 @@ p2prc --rmcgroup --group <group id> --id <container id>

      3.0.16. Delete entire group

      -
      +
       p2prc --rmgroup <group id>
       
      @@ -517,7 +511,7 @@ p2prc --rmgroup <group id>

      3.0.17. Pulling plugin from a remote repo

      -
      +
       p2prc --pp <repo link>
       
      @@ -526,7 +520,7 @@ p2prc --pp <repo link>

      3.0.18. Deleting plugin from the plugin directory

      -
      +
       p2prc --rp <plugin name> 
       
      @@ -535,21 +529,36 @@ p2prc --rp <plugin name>

      3.0.19. Added custom metadata about the current node

      -
      +
       p2prc --amd "custom metadata"
       
      -
      -

      3.0.20. MapPort and link to domain name

      +
      +

      3.0.20. MapPort and link to domain name

      -
      +

      +Allows to expose remote ports from a machine in the P2P network. +

      +
       p2prc --mp <port no to map> --dn <domain name to link Mapped port against>
       
      +
      +
        +
      1. MapPort in remote machine
        +
        +

        +This is to ensure ports on remote machines on the P2PRC can be easily opened. +

        +
        +p2prc --mp <port no to map> --dn <domain name to link Mapped port against> --ra <remote server address>
        +

        +
      2. +
      @@ -565,7 +574,7 @@ servers with optimal performance, enhancing their overall network experience.

      -
      +

      p2pmoduleArch.png

      Figure 1: UML diagram of P2P module

      @@ -666,7 +675,7 @@ from the TURN server. The flow below describes the workflow.
    2. Call /FRPPort
    3. -
      +
       http://<turn server ip>:<server port no>/FRPport
       
      @@ -760,7 +769,7 @@ p2prc.h p2prc.so Below are a sample set of commands to open the bindings implementation.

      -
      +
       # run
       cd Bindings/
       # list files
      @@ -854,7 +863,7 @@ that convert a go object to JSON string initially and converts it to
       
       
    4. A Pseudo code to refer to the common function implementation shape could be represented as:
      -
      +
       func <Function name> (output *C.char) {
             <response>,<error> := <P2PRC function name>(<parameters if needed>)
             if <error> != nil {
      @@ -873,8 +882,8 @@ func <Function name> (output *C.char) {
       

      5.3. Current languages supported

      -
      -

      5.3.1. Python

      +
      +

      5.3.1. Python

        @@ -912,8 +921,8 @@ called from other programming languages.
      -
      -

      5.3.2. Haskell

      +
      +

      5.3.2. Haskell

      P2PRC officially supports Haskell bindings and will further support @@ -1031,7 +1040,7 @@ from the TURN server. The flow below describes the workflow.

    5. Call /FRPPort
    6. -
      +
       http://<turn server ip>:<server port no>/FRPport
       
      @@ -1066,19 +1075,133 @@ func main() { - -
      -

      10. Ideas for future potencial features

      +
      +

      10. Blog posts

      +
      +
      +

      10.1. Self host within 5 minutes any program

      +
      +

      +This is a fun expirement for anyone to try to quickly run a server and +quickly do a map port and domain name mapping in a single command. +

      +
      + +
      +

      10.1.1. 1. Find a program you want to run

      +
      +

      +Let's try to setup a really easy program (Let's do with Linkwarden +with docker compose :) ). This is under the assumption you have docker +compose installed on your local machine. +

      +
      + +
        +
      1. Let's run Linkwarden using docker compose and P2PRC
        +
        +

        +Installation instrutions: +

        +
        +mkdir linkwarden && cd linkwarden
        +curl -O https://raw.githubusercontent.com/linkwarden/linkwarden/refs/heads/main/docker-compose.yml
        +curl -L https://raw.githubusercontent.com/linkwarden/linkwarden/refs/heads/main/.env.sample -o ".env"
        +
        + +

        +Environment configuration +

        +
        +vim .env
        +
        +# Change values
        +NEXTAUTH_URL=http://localhost:3000/api/v1/auth
        +NEXTAUTH_SECRET=VERY_SENSITIVE_SECRET
        +POSTGRES_PASSWORD=CUSTOM_POSTGRES_PASSWORD
        +
        +

        +Run linkwarden! +

        +
        +docker compose up
        +
        + +

        +If setup correctly linkwarden should +be running. +Local link: http://localhost:3000 +

        + +

        +Time to setup P2PRC +Installation Instructions +

        + +

        +Run p2prc as a background +

        +
        +p2prc -s &
        +
        + +

        +Run map port and domain mapping +

        +
        +p2prc --mp 3000 --dn ldt.akilan.io
        +
        + +

        +Sample response +

        +
        + {
        +        "IPAddress": "217.76.63.222",
        +        "PortNo": "61582",
        +        "EntireAddress": "217.76.63.222:61582"
        +}
        +
        + +

        +Add DNS entry +

        +
        +A entry 217.76.63.222
        +
        + +

        +Your done now just head to ldt.akilan.io (Or your domain name you added) +

        +
        +
      2. +
      +
      +
      +
      + + + + + + + + + + +
      +

      11. Ideas for future potencial features

      +

      Consists of personal loideas for the future of P2PRC. At moment only has main contributors writiing to this.

      -
      -

      10.1. To support hetrogenous set of Nodes that cannot run P2PRC

      -
      +
      +

      11.1. To support hetrogenous set of Nodes that cannot run P2PRC

      +

      This stems from a personal issue I have when doing research on CheriBSD kernel. For my research I am using the ARM morello @@ -1094,9 +1217,9 @@ network nodes.

      -
      -

      10.1.1. Assumptions:

      -
      +
      +

      11.1.1. Assumptions:

      +
      • I have a Morello board that cannot run P2PRC
      • The Morello has a local IP address (ex: 192.168.0.10)
      • @@ -1108,9 +1231,9 @@ as well look into custom tasks into the hetrogenous hardware.
      -
      -

      10.1.2. Set of interesting possible:

      -
      +
      +

      11.1.2. Set of interesting possible:

      +

      We build a cool set possibilities before and use this to build up the implementation plan. @@ -1126,9 +1249,9 @@ weight hypervisors.

    7. -
      -

      10.1.3. Implementation

      -
      +
      +

      11.1.3. Implementation

      +
      • To use implementations similar to socat to ensure we can bind address of local nodes to a node running P2PRC and the node running P2PRC can do a local map port.
      • @@ -1141,7 +1264,7 @@ other nodes can access the Morello board who have permission access.
      -
      +

      P2PRCRemoteNodes.png

      Figure 2: Implementation idea (To be improved upon)

      @@ -1153,7 +1276,7 @@ other nodes can access the Morello board who have permission access.

    Author: Akilan

    -

    Created: 2025-01-24 Fri 15:22

    +

    Created: 2025-01-27 Mon 22:30

    Validate

    diff --git a/Docs/index.org b/Docs/index.org index f926c37..b638f43 100644 --- a/Docs/index.org +++ b/Docs/index.org @@ -93,7 +93,7 @@ To set up the internal dependencies and build the entire go code into a single binary #+begin_example -make install +make #+end_example **** For Windows @@ -116,17 +116,6 @@ export P2PRC=//p2p-rendering-computation export PATH=//p2p-rendering-computation:${PATH} #+end_example -*** Set up configuration file -:PROPERTIES: -:CUSTOM_ID: set-up-configuration-file -:END: -#+begin_example -make configfile -#+end_example - -Open the config file =config.json= and add the IPv6 address if you have -one. - *** Test if binary works :PROPERTIES: :CUSTOM_ID: test-if-binary-works @@ -786,6 +775,79 @@ func main() { +* Blog posts +** Self host within 5 minutes any program +This is a fun expirement for anyone to try to quickly run a server and +quickly do a map port and domain name mapping in a single command. + +*** 1. Find a program you want to run + Let's try to setup a really easy program (Let's do with Linkwarden + with docker compose :) ). This is under the assumption you have docker + compose installed on your local machine. + +**** Let's run Linkwarden using docker compose and P2PRC + [[https://docs.linkwarden.app/self-hosting/installation][Installation instrutions]]: + #+BEGIN_SRC +mkdir linkwarden && cd linkwarden +curl -O https://raw.githubusercontent.com/linkwarden/linkwarden/refs/heads/main/docker-compose.yml +curl -L https://raw.githubusercontent.com/linkwarden/linkwarden/refs/heads/main/.env.sample -o ".env" + #+END_SRC + + Environment configuration + #+BEGIN_SRC +vim .env + +# Change values +NEXTAUTH_URL=http://localhost:3000/api/v1/auth +NEXTAUTH_SECRET=VERY_SENSITIVE_SECRET +POSTGRES_PASSWORD=CUSTOM_POSTGRES_PASSWORD + #+END_SRC + Run linkwarden! + #+BEGIN_SRC +docker compose up + #+END_SRC + + If setup correctly linkwarden should + be running. + Local link: http://localhost:3000 + + Time to setup P2PRC + [[https://p2prc.akilan.io/Docs/#build-project-and-install-project][Installation Instructions]] + + Run p2prc as a background + #+BEGIN_SRC +p2prc -s & + #+END_SRC + + Run map port and domain mapping + #+BEGIN_SRC +p2prc --mp 3000 --dn ldt.akilan.io + #+END_SRC + + Sample response + #+BEGIN_SRC + { + "IPAddress": "217.76.63.222", + "PortNo": "61582", + "EntireAddress": "217.76.63.222:61582" +} + #+END_SRC + + Add DNS entry + #+BEGIN_SRC +A entry 217.76.63.222 + #+END_SRC + + Your done now just head to ldt.akilan.io (Or your domain name you added) + + + + + + + + + * Ideas for future potencial features Consists of personal loideas for the future of P2PRC. diff --git a/go.mod b/go.mod index 3b589d3..b5794f4 100644 --- a/go.mod +++ b/go.mod @@ -11,7 +11,7 @@ require ( github.com/google/uuid v1.3.0 github.com/lithammer/shortuuid v3.0.0+incompatible github.com/otiai10/copy v1.6.0 - github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2 + github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5 github.com/shirou/gopsutil/v3 v3.22.10 github.com/urfave/cli/v2 v2.3.0 gitlab.com/NebulousLabs/go-upnp v0.0.0-20181011194642-3a71999ed0d3 @@ -31,7 +31,7 @@ require ( github.com/cespare/xxhash/v2 v2.1.2 // indirect github.com/containerd/containerd v1.5.0-beta.1 // indirect github.com/coreos/go-oidc v2.2.1+incompatible // indirect - github.com/cpuguy83/go-md2man/v2 v2.0.0 // indirect + github.com/cpuguy83/go-md2man/v2 v2.0.4 // indirect github.com/docker/distribution v2.7.1+incompatible // indirect github.com/docker/go-connections v0.4.0 // indirect github.com/docker/go-units v0.4.0 // indirect @@ -76,10 +76,9 @@ require ( github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.37.0 // indirect github.com/prometheus/procfs v0.8.0 // indirect - github.com/russross/blackfriday/v2 v2.0.1 // indirect + github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/sergi/go-diff v1.1.0 // indirect - github.com/shurcooL/sanitized_anchor_name v1.0.0 // indirect - github.com/sirupsen/logrus v1.7.0 // indirect + github.com/sirupsen/logrus v1.9.3 // indirect github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161 // indirect github.com/templexxx/xor v0.0.0-20191217153810-f85b25db303b // indirect github.com/tjfoc/gmsm v1.4.1 // indirect @@ -91,7 +90,7 @@ require ( gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40 // indirect golang.org/x/net v0.10.0 // indirect golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b // indirect - golang.org/x/sys v0.15.0 // indirect + golang.org/x/sys v0.29.0 // indirect golang.org/x/text v0.14.0 // indirect golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 // indirect google.golang.org/appengine v1.6.7 // indirect diff --git a/go.sum b/go.sum index 530db0d..3009871 100644 --- a/go.sum +++ b/go.sum @@ -183,8 +183,9 @@ github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+ github.com/coreos/pkg v0.0.0-20160727233714-3ac0863d7acf/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.0 h1:EoUDS0afbrsXAZ9YQ9jdu/mZ2sXgT1/2yyNng4PGlyM= github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= +github.com/cpuguy83/go-md2man/v2 v2.0.4 h1:wfIWP927BUkWJb2NmU/kNDYIBTh/ziUX91+lVfRxZq4= +github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= @@ -548,8 +549,8 @@ github.com/otiai10/mint v1.3.2 h1:VYWnrP5fXmz1MXvjuUvcBrXSjGE6xjON+axB/UrpO3E= github.com/otiai10/mint v1.3.2/go.mod h1:/yxELlJQ0ufhjUwhshSj+wFjZ78CnZ48/1wtmBH1OTc= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= -github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2 h1:JhzVVoYvbOACxoUmOs6V/G4D5nPVUW73rKvXxP4XUJc= -github.com/phayes/freeport v0.0.0-20180830031419-95f893ade6f2/go.mod h1:iIss55rKnNBTvrwdmkUpLnDpZoAHvWaiq5+iMmen4AE= +github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5 h1:Ii+DKncOVM8Cu1Hc+ETb5K+23HdAMvESYE3ZJ5b5cMI= +github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5/go.mod h1:iIss55rKnNBTvrwdmkUpLnDpZoAHvWaiq5+iMmen4AE= github.com/pires/go-proxyproto v0.6.2 h1:KAZ7UteSOt6urjme6ZldyFm4wDe/z0ZUP0Yv0Dos0d8= github.com/pires/go-proxyproto v0.6.2/go.mod h1:Odh9VFOZJCf9G8cLW5o435Xf1J95Jw9Gw5rnCjcwzAY= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= @@ -611,8 +612,9 @@ github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFR github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.8.0 h1:FCbCCtXNOY3UtUuHUYaghJg4y7Fd14rXifAYUAtL9R8= github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6poM+XZ2dLUbcbE= -github.com/russross/blackfriday/v2 v2.0.1 h1:lPqVAte+HuHNfhJ/0LC98ESWRz8afy9tM/0RK8m9o+Q= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= +github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/safchain/ethtool v0.0.0-20190326074333-42ed695e3de8/go.mod h1:Z0q5wiBQGYcxhMZ6gUqHn6pYNLypFAvaL3UvgZLR0U4= github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= github.com/seccomp/libseccomp-golang v0.9.1/go.mod h1:GbW5+tmTXfcxTToHLXlScSlAvWlF4P2Ca7zGrPiEpWo= @@ -620,7 +622,6 @@ github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0= github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/shirou/gopsutil/v3 v3.22.10 h1:4KMHdfBRYXGF9skjDWiL4RA2N+E8dRdodU/bOZpPoVg= github.com/shirou/gopsutil/v3 v3.22.10/go.mod h1:QNza6r4YQoydyCfo6rH0blGfKahgibh4dQmV5xdFkQk= -github.com/shurcooL/sanitized_anchor_name v1.0.0 h1:PdmoCO6wvbs+7yrJyMORt4/BmY5IYyJwS/kOiWx8mHo= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= github.com/sirupsen/logrus v1.0.4-0.20170822132746-89742aefa4b2/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= github.com/sirupsen/logrus v1.0.6/go.mod h1:pMByvHTf9Beacp5x1UXfOR9xyW/9antXMhjMPG0dEzc= @@ -628,8 +629,9 @@ github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPx github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= -github.com/sirupsen/logrus v1.7.0 h1:ShrD1U9pZB12TX0cVy0DtePoCH97K8EtX+mg7ZARUtM= github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0= +github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= +github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= @@ -917,8 +919,9 @@ golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220114195835-da31bd327af9/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220128215802-99c3d69c2c27/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc= -golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU= +golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=