oxequa / realize

Realize is the #1 Golang Task Runner which enhance your workflow by automating the most common tasks and using the best performing Golang live reloading.
GNU General Public License v3.0
4.46k stars 230 forks source link

realize. file upload. No obvious error prompt #271

Open cloudmer opened 3 years ago

cloudmer commented 3 years ago

What version of Go are you using (go version)?

$ go version
go version go1.14.5 linux/amd64

Does this issue reproduce with the latest release?

Yes, There is still no solution

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/cloud/.cache/go-build"
GOENV="/home/cloud/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/cloud/work/golang"
GOPRIVATE=""
GOPROXY="https://goproxy.cn"
GOROOT="/usr/local/share/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/share/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build788491564=/tmp/go-build -gno-record-gcc-switches"

What did you do?

I'm using the HTTP service. use gin https://github.com/gin-gonic/gin I found that it had nothing to do with gin

I'm uploading a special file.

func Upload(ctx *gin.Context)  {
    file, err := ctx.FormFile("file")
    if err != nil {
        ctx.JSON(http.StatusOK, response.Error(err))
        return
    }
    fmt.Println(file, err)
        ctx.JSON(http.StatusOK, response.Success("ok", nil))
    return
}

he service didn't respond after I uploaded it.

And the service seems to be all right, no error prompt, no crash error prompt, it seems to be all right!!!

When I access this interface for the second time, return Error: connect ECONNREFUSED 127.0.0.1:8080

At this time, golang still looks very healthy, but he can't work any more

[09:51:43][EPDS] : [GIN-debug] DELETE /v1/field/testing/:id     --> epds/apis/v1/controllers.TestingFieldDelete (5 handlers)
[09:51:43][EPDS] : [GIN-debug] Listening and serving HTTP on 0.0.0.0:8080

Then I found out where the problem was.

I debug the code.

               // file, store in memory or on disk
        fh := &FileHeader{
            Filename: filename,
            Header:   p.Header,
        }
        n, err := io.CopyN(&b, p, maxMemory+1)
        fmt.Println(err, "eeeeeeeeeeeeeeeeeeeeeeeeeeeeee")
        if err != nil && err != io.EOF {
            return nil, err
        }
        fmt.Println("qqqqqqqqqqqqqqqqqqqqq")
        fmt.Println(b.Bytes(), "bbbbbbbbbbbbbbbbbbbbb")
        fmt.Println("The process has collapsed")

output

[09:57:19][EPDS] : [GIN-debug] Listening and serving HTTP on 0.0.0.0:8080
[09:57:32][EPDS] : EOF eeeeeeeeeeeeeeeeeeeeeeeeeeeeee
[09:57:32][EPDS] : qqqqqqqqqqqqqqqqqqqqq

The process has collapsed No output !!!!!!!!!!!!! io.EOF error. Can no longer call b.Bytes()

Now I post my file fileName: test.yaml

{{- $app_name := .Values.application.name -}}

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-config
data:
  components.php: |
    <?php

    $db = require(__DIR__ . '/db.php');

    $components = [

        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => '3zX3FVJW7jtWMyNc8mHOIiZPzjwh-XIu1',
        ],

        'cache' => [
            'class' => 'yii\caching\FileCache',
        ],

        'user' => [
            'identityClass'   => 'app\models\User',
            'enableAutoLogin' => true,
        ],

        'errorHandler' => [
            'errorAction' => 'touch/errors/error',
        ],

        /*
        'log' => [
            'traceLevel' => YII_DEBUG ? 3 : 0,
            'targets' => [
                [
                    'class'  => 'yii\log\FileTarget',
                    'levels' => ['error', 'warning'],
                ],
            ],
        ],
        */

        'log' =>[
            'traceLevel' => YII_DEBUG ? 3 : 0,
            'targets' => [
                'db' =>[
                    'class'   => 'yii\log\DbTarget',
                    'enabled' => true,
                    'prefix'  => function () {
                        return Yii::$app->user->id;
                    },
                    'categories' => ['admin', 'author'],
                    'levels'     => ['info'],
                    {{ $logTable := "{{%ts_log}}" }}
                    'logTable' => '{{$logTable}}',
                    'logVars'    => [],
                ],
            ],
        ],

        'mailer' => [
            // send all mails to a file by default. You have to set
            // 'useFileTransport' to false and configure a transport
            // for the mailer to send real emails.
            //'useFileTransport' => true,
            'class'            => 'yii\swiftmailer\Mailer',
            'viewPath'         => 'mail',
            'useFileTransport' => false,
            'transport' => [
                'class'      => 'fdsfsf',
                'host'       => 'gsdgsg',
                'port'       => 'gds',
                'encryption' => 'gsdgsd',
                'username'   => 'gdsgsd@gdsgsg.cn',
                'password'   => "dgsgsgsdgs",
            ],
        ],

        'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName'  => false,
            'rules'           => [],
        ],

        'redis' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.session.host}}',
            'port' => {{.Values.redis.session.port}},
            'database' => {{.Values.redis.session.database}},
            'password' => '{{.Values.redis.session.password}}'
        ],
        'redis2' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.session.host}}',
            'port' => {{.Values.redis.session.port}},
            'database' => {{.Values.redis.session.database}},
            'password' => '{{.Values.redis.session.password}}'
        ],

        'script_authorize_redis_lock' => [
            'class'    => 'yii\redis\Connection',
            'hostname' => '{{.Values.redis.dan.host}}',
            'port' => {{.Values.redis.dan.port}},
            'database' => {{.Values.redis.dan.database}},
            'password' => '{{.Values.redis.dan.password}}',
        ],

        'session' => [
            'class'      => 'yii\redis\Session',
            'useCookies' => true,
            'timeout' => defined('SESSIONID_LIFE_TIME') ? constant('SESSIONID_LIFE_TIME') : 86400,       // session 过期时间
            'redis' => [
              'hostname' => '{{.Values.redis.session.host}}',
              'port' => {{.Values.redis.session.port}},
              'database' => {{.Values.redis.session.database}},
              'password' => '{{.Values.redis.session.password}}'
            ],
        ],

        'aliyunoss' => [
            'class'  => 'app\components\Aliyunoss',
            'config' => $params['oss'],
        ],

        'elasticsearch' => [
            'class'  => 'app\components\Elasticsearch',
            'config' => $params['elasticsearch']
        ],

        'version_upload_log' => [
            'class' => 'app\components\Logger',
            'logFile' => '@runtime/script_upload/'.date('Y-m-d').'.log',
        ],
    ];
    return array_merge($components, $db);

  console.php: |
    <?php

    $params = require(__DIR__ . '/params.php');
    $db = require(__DIR__ . '/db.php');
    $components = require(__DIR__ . '/components.php');
    unset($components['request']);
    unset($components['errorHandler']);
    unset($components['mailer']);
    unset($components['user']);

    $config = [
        'id' => 'basic-console',
        'basePath' => dirname(__DIR__),
        'bootstrap' => ['log'],
        'controllerNamespace' => 'app\commands',

        /*
        'components' => [
            'cache' => [
                'class' => 'yii\caching\FileCache',
            ],
            'log' => [
                'targets' => [
                    [
                        'class' => 'yii\log\FileTarget',
                        'levels' => ['error', 'warning'],
                    ],
                ],
            ],
            'db' => $db,
        ],
        'params' => $params,
        */

        'components'   => $components,
        'params'       => $params,

        /*
        'controllerMap' => [
            'fixture' => [ // Fixture generation command line.
                'class' => 'yii\faker\FixtureController',
            ],
        ],
        */
    ];

    if (YII_ENV_DEV) {
        // configuration adjustments for 'dev' environment
        $config['bootstrap'][] = 'gii';
        $config['modules']['gii'] = [
            'class' => 'yii\gii\Module',
        ];
    }
    return $config;

  db.php: |
    <?php

    return [
        // 触动DB
        'db' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.main_rw_splitting.host}};dbname={{.Values.mysql.main_rw_splitting.dbname}}',
            'username' => '{{.Values.mysql.main_rw_splitting.user}}',
            'password' => '{{.Values.mysql.main_rw_splitting.password}}',
            'charset'  => 'utf8mb4',
            'attributes' => [
                PDO::MYSQL_ATTR_FOUND_ROWS => true,
            ],
        ],

        'db_pay' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.ts_pay.host}};dbname={{.Values.mysql.ts_pay.dbname}}',
            'username' => '{{.Values.mysql.ts_pay.user}}',
            'password' => '{{.Values.mysql.ts_pay.password}}',
            'charset'  => 'utf8'
        ],

        'db_elf' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.elf.host}};dbname={{.Values.mysql.elf.dbname}}',
            'username' => '{{.Values.mysql.elf.user}}',
            'password' => '{{.Values.mysql.elf.password}}',
            'charset'  => 'utf8'
        ],

        'db_ent' => [
            'class'    => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.enterprise.host}};dbname={{.Values.mysql.enterprise.dbname}}',
            'username' => '{{.Values.mysql.enterprise.user}}',
            'password' => '{{.Values.mysql.enterprise.password}}',
            'charset'  => 'utf8'
        ],

        'db_pro' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.tspro.host}};dbname={{.Values.mysql.tspro.dbname}}',
            'username' => '{{.Values.mysql.tspro.user}}',
            'password' => '{{.Values.mysql.tspro.password}}',
            'charset' => 'utf8',
        ],

        'db_statis' => [
            'class' => 'yii\db\Connection',
            'dsn' => 'mysql:host={{.Values.mysql.ts_statis.host}};dbname={{.Values.mysql.ts_statis.dbname}}',
            'username' => '{{.Values.mysql.ts_statis.user}}',
            'password' => '{{.Values.mysql.ts_statis.password}}',
            'charset' => 'utf8',
        ],
    ];

  params.php: |
    <?php

    return [

        'loginUrl' => 'fsdfsdf',

        'oss' => [
            'OSS_ACCESS_ID'=>'{{.Values.ram.author_platform.access_id}}',
            'OSS_ACCESS_KEY'=>'{{.Values.ram.author_platform.access_key}}',
            'EndPoint'=>'http://fsdfsdf',
            'OSS_BUCKETNAME'=>'fsdfsd',
            'root'=>'fsdf',
            'auth_photo_root' => 'fdsfsf',
        ],

        'ts-source-bucket'=>'fsdfsdfs-fsd',

        'cdn' => [
            'tsp'=>"https://{{.fdsp}}",
            'update'=>"https://{{.fsd.fsd.fds.fsdf}}",
            'oss'=>"https://{{.fsd.fs.ds.oss}}",
        ],

        'RSA_private_key' => file_get_contents( __DIR__ . '/secret/RsaPrivateKey.pem' ),
        'RSA_public_key'  => file_get_contents( __DIR__ . '/secret/RsaPublicKey.pem' ),

        'TSP_private_key' => file_get_contents( __DIR__ . '/secret/TspPrivateKey.pem' ),

        'card_auth_device_max_year' => 3,

        'card_day_consume' => 1,

        'buy_point_unit_price' => 0.05,

        'card_forever_consume' => 1000,

        'elasticsearch' => [
            'host' => [
                'fsdfs.fdsfsdf.54.17:fds'
            ]
        ],

        'devices_list_es_search' => false,
        'system_upgrade' => false,

    ];

  web.php: |
    <?php

    $params = require(__DIR__ . '/params.php');
    $db = require(__DIR__ . '/db.php');
    $components = require(__DIR__ . '/components.php');

    $config = [
        'id'           => 'tsp',
        'basePath'     => dirname(__DIR__),
        'bootstrap'    => ['log'],
        'language'     => 'zh-CN',
        'components'   => $components,
        'params'       => $params,
    ];

    if (YII_ENV_DEV) {
        // configuration adjustments for 'dev' environment
        $config['bootstrap'][] = 'debug';
        $config['modules']['debug'] = [
            'class' => 'yii\debug\Module',
            // uncomment the following to add your IP if you are not connecting from localhost.
            'allowedIPs' => ['115.171.135.157'],
        ];

        $config['bootstrap'][] = 'gii';
        $config['modules']['gii'] = [
            'class' => 'yii\gii\Module',
            // uncomment the following to add your IP if you are not connecting from localhost.
        ];
    }

    return $config;

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-nginx
data:
  nginx.conf: |
    limit_req_zone $binary_remote_addr zone=addr:10m rate=1000r/s;
    server {
        client_max_body_size 50m;
        listen 80;

        proxy_ignore_client_abort on;
        client_header_timeout 300s;
        client_body_timeout   300s;

        #server_name localhost dev.touchsprite.com;
        server_name  {{ template "nginx.servername" . }};
        #limit_req   zone=req_one  burst=100;
        limit_req zone=addr burst=5000 nodelay;

        root /www/default/web;
        index index.php index.html index.htm;

        location /static/ {
            access_log off;
            expires 1d;
            root "/www/default/web/frontEnd/dist";
        }

        location /new_public/ {
           access_log off;
           expires 1d;
           root "/www/default/web/frontEnd";
        }

        location / {
            try_files $uri $uri/ /index.php?$args;
        }

        location = /s-c-data {
          # 允许跨域
          add_header Access-Control-Allow-Origin *;
          add_header Access-Control-Allow-Headers X-Requested-With;
          add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
          default_type text/html;
          return 200 $msec;
        }

        location /ajax/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /site/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /images/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /css/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /js/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /assets/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /script/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }
        location /public/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /key/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /category/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /blacklist/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /device/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /temporary/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /log/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /about/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /weixin/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /openapi/luacts1 {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location /weixinqa/ {
            proxy_connect_timeout 300s;
            proxy_send_timeout 300s;
            proxy_read_timeout 300s;
            proxy_pass http://svc-tsstore-web-http;
        }

        location ~ \.php$ {
            include fastcgi.conf;
            fastcgi_connect_timeout 300s;
            fastcgi_send_timeout 300s;
            fastcgi_read_timeout 300s;
            fastcgi_pass  unix:/var/run/php-fpm.sock;
            #fastcgi_pass   localhost:9000;
            #fastcgi_pass unix:/var/run/php5-fpm.sock;
            try_files $uri =404;
        }
    }

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-web
data:
  index.php: |
    <?php

    define("SESSIONID_LIFE_TIME", 86400);
    ini_set('session.cookie_lifetime', SESSIONID_LIFE_TIME);

    $host = $_SERVER['HTTP_HOST'];
    $suffix = substr($host, strrpos($host, '.'));

    ini_set('session.cookie_domain', "touchsprite{$suffix}");

    // comment out the following two lines when deployed to production
    {{- if .Values.debug }}
    defined('YII_DEBUG') or define('YII_DEBUG', true);
    defined('YII_ENV') or define('YII_ENV', 'dev');
    {{- else }}
    defined('YII_DEBUG') or define('YII_DEBUG', false);
    defined('YII_ENV') or define('YII_ENV', 'dev');
    {{- end }}

    require(__DIR__ . '/../vendor/autoload.php');
    require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');

    $config = require(__DIR__ . '/../config/web.php');

    (new yii\web\Application($config))->run();

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-supervisor
data:

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-root
data:

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-secret
data:
  TspPrivateKey.pem: |
    -----BEGIN RSA PRIVATE KEY-----
    MIIEpQIBAAKCAQEAzwyG5Ag2AnoAab+87ZJS/h7Jh4ZyIgH3JTbQTW1nsxuP/dNp
    a0uHqNkFjgN6QETVin3WTP/nTQt0PqKlJn9Tb8O8R+0iP1pGtacENd8iiUoNc1ts
    8Pu29IyFrQTnT+CG2eb4EVVNSwYXKyQeQirLohNDE5ld+dnjQlMDcKZCdlveb6T7
    22qJ6pYSvxi7D5yVCdaAmHCXzNEWpYizon5dxDJlhXZsyTPJmkvYWaxkhK0oIU4S
    b/cJBLgBT9VmQGLuCNK3UzZmR7rzoHj70aVDc9nKSUu7RD9chYWJaz61dehfgG8e
    NF6kOSnW83J+4dPi6miEsGcN/5PTM+MX/ddmiQIDAQABAoIBADFM5U2k2t9qF3EW
    s7DJ97MEt63qiICqgSO+UoktNNUEChxBW8etm2bMDjOLhm+JNGOepQl+oZ/Jy2si
    pTpudPqW290wjMgTAeU9GJaPRBT2qg8+xMj41s6SKz5QfZeaeeGmyoiuDBKCJ8Ah
    AId20zgLaBxhl2vnwuJHC/mlzQuLVLvbC7g+S02e8WY4h4eBZ1iBQmL7D0pzyQ+j
    aiGlZvVJ+VBPXHpqHv+HM1wjqYmQAH2TfNJdSDOwuQCNpishBBV8yCPk6BrHZpAH
    xkTbrnGmBFOl6HqGfFaGKxaxl7v58jBckQVoVckqEm+pZmC9WGhu2rVZ/MZOSNQm
    bkkExVECgYEA8gEDF9asDanYQYcaNzI4fVzxWSR1xBTFiQGUGWhKC+u/RX2dT7gG
    rITy2jKtzZn74EKU5Ope65ISkw4Mo7Ha7RwFsDhv+QXel+CX2r6+8r7PfQ5CcGuj
    UldBXTHu2tmMRq3HORRIrpVbXa0qw0G9jt9Fcdw7pynvSdvnsPXBbX0CgYEA2wX9
    D2vh0BFC6SJwb30+DT5IX5ITXUybiBJ8C7+7eHfK5fwwgaZae6n5QUra/vhQ8yDz
    YFBshIVZYdV3vYH2RkbuoZy35Finyoq0jUmHdOQl2Ji4rRark9nvsYAWnCGXCZPc
    jH1TcToYVejjpTa9Jfcq9kfc0dbr3PxSs+Xlmv0CgYEAoye7hh7c8HlJqyQCsKPT
    IfG/ZXIHU6MNakj+KAL/qPnPgnIl1NEk7rrTX/g65RqjjZZV+99nDzrz+uDF9La7
    +o+h5iSmmSUz5QEuX/OpmM675Hvwnwpymdjp4IMBndp9kEkov3rFZa6cYpOU+P8h
    ZWlx0EnCjfjfstPnaI7HUaECgYEA1SNewEMb3H7vvi/leplGaVzS0S416fVC5YgX
    bteGeBUbPfPMwF5Cb1VZWlCeDMFZBUBrlq6s68lY0fwKKkDuiDU+w8berTgZEOEq
    EtQbHYVnzv/Pt6D4F0leGD2twwJtGMTrOfff0w6h1UhmXipD33VU7zT8ha8rPeZT9O8
    J5Txe4ECgYEA3yVm5TvZpi7GWtjklFGX+/4kISL8MkkvS7BhStk1y/F5Aj4F+/LI
    GbKzsC78vYhsqBhP+jNCWgKGSjEOBFsjMl7SnpU7zQ6wO+N5N4jDeOlDS7YbafCC
    mHVO5XDmVw93opRVsm8Fns6s0NhDQP4rzO1bODUFxZH1QNMZ4Hle7tw=
    -----END RSA PRIVATE KEY-----

  RsaPrivateKey.pem: |
    -----BEGIN RSA PRIVATE KEY-----
    MIICXAIBAAKBgQCh1l7EsjADCC2sSBFun7SbAftCnufCklS9OsFE6U4PY/M/dE8q
    LAP36SUkS28CesC7DBN7kka7F+LQHiO2KmxQi8YcayKZ5IPGvNhoh0gCdTnvXRE9
    FSmP42KiDbnJOGWQO86Y1LpQY74MJvYsnxBNYURc719A/ZRuV9uPJSZXHwIDAQAB
    AoGAL03NnYjH59r4HqdiEQe1bqmBm9N+wqyrADSwUUgwfOcmLqH8kcMT1d7b8GPs
    KrlepE2/VBtJeV5d+Z8VqSV1Sw7Rmkpn2nMeQ1rhavkipnB3tanEYwFgpI9TFg+F
    GRINrrREbvsYMVSe44G0BxB3LcgdLcfsssdi6QLWzXMEoddFdrAECQQDM4CQWVceK8XTS
    w6Bx6eQJAUZr7vK5YdnrZxGQ0Q85HMlD7uPeFCbwkPYGUKHiNj9vCyzJ3iPz3v5P
    1Ncg5n+fAkEAyjjdfw4Ub188kfnC+JYzHzdZODPrqiatCsAaXoEDq7Iul9NDAH75
    HW4WR6z2SMTozcfIaqz7QSQ4AK/CheL4gQJAENpTPZ8axfwsvvWmqhgyUOdQ8qn6
    P3OkKHAXCtGXrfwHNlZdWjRQK7PQ+R4C4wfRWgISUhy62mG6i7iXZbZwQwJBALZ6
    +A1GJFSX6S2E51axGzKpHH6mA5xISFByJ5lt7GUMZhUlU8nnyl6vT7WgM6JY5geD
    p6vzqssOpuafs/ZjaYECQEzevhkcJUzSBOTU8y46fx9vBcMbxFC8wAXn0rnIfUB5
    bl2s/46Qxw6KS0+ZD6XXSFfgxi7Rj9nP9Kq0YhZ65d0=
    -----END RSA PRIVATE KEY-----

  RsaPublicKey.pem: |
    -----BEGIN PUBLIC KEY-----
    MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCh1l7EsjADCC2sSBFun7SbAftC
    nufCklS9OsFE6U4PY/M/dE8qLAP36fffSUkS28CesC7DBN7kka7F+LQHiO2KmxQi8Yc
    ayKZ5IPGvNhoh0gCdTnvXRE9FSmP42KiDbnJOGWQO86Y1LpQY74MJvYsnxBNYURc
    719A/ZRuV9uPJSZXHwIDAQAB
    -----END PUBLIC KEY-----

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: cm-{{$app_name}}-fpm
data:
  zzz-docker.conf: |
    [global]
    daemonize = no

    [www]
    listen = /var/run/php-fpm.sock
    listen.mode = 0777

What did you expect to see?

I need information remind To help me

What did you see instead?

I didn't see any information

I used it https://github.com/oxequa/realize

That's the problem I tried

go run
go build -o epds
./epds -c config.yaml

The above operation will not be a problem The key is that the above documents are special I didn't find any problems with other documents

use https://github.com/oxequa/realize Problems encountered

.realize.yaml

settings:
  legacy:
    force: false
    interval: 0s

server:
  status: true
  open: true
  port: 10086
  host: 127.0.0.1
schema:
- name: epds
  path: .
  commands:
    build:
      status: true
      method: go build
      args:
        - -o ./bin/epds
    run:
      status: true
      method: ./bin/epds
  args:
    - -c=./config/config.yaml
  watcher:
    extensions:
    - go
    paths:
    - /
    ignored_paths:
    - .git
    - .realize
    - vendor
polyglotdev commented 1 year ago

is anyone still maintaing this?