小编Der*_* C.的帖子

GitLab CI 在另一个变量中设置一个变量

我有一个类似这样的 CI 脚本设置,包含 3 个文件:

# file Vars
.def-vars:
    STAGING_SSH_DEST: mysite.com
    PROJECT_ROOT: myRoot
Run Code Online (Sandbox Code Playgroud)
# file gitlab-ci
variables:
    extends: .def-vars
    STAGING_SSH_DEST: myrealsite.com
    PROJECT_ROOT: /myRealRoot

deploy-stage:
    extends: .deploy
    variables:
        SSH_DESTINATION: $STAGING_SSH_DEST
Run Code Online (Sandbox Code Playgroud)
# file deploy
.deploy:
    variables:
        SSH_DESTINATION: mysite.com
        RSYNC_DESTINATION: $SSH_DESTINATION:$PROJECT_ROOT
Run Code Online (Sandbox Code Playgroud)

我将文件和变量像这样分开,以提高脚本的可重用性。

我的想法是,由于我有多个站点目标、临时产品,我希望能够将 ssh 目标传递给每个目标,并让作业自行计算出 rsync。问题是,变量扩展没有按照我想象的方式工作。

在部署脚本中,我添加了打印并得到以下内容:

$ echo $SSH_DESTINATION            # This is the variable name local to job
   myrealsite.com                  # Yep! printed the passed in value
$ echo $RSYNC_DESTINATION          # $SSH_DESTINATION:$PROJECT_ROOT
   $STAGING_SSH_DEST:/myRealRoot   # That is the name of the variable passed in …
Run Code Online (Sandbox Code Playgroud)

bash gitlab gitlab-ci

5
推荐指数
1
解决办法
1900
查看次数

无法在AWS Lambda函数上使用ES6;如何在 Lambda 中导入 ES6 模块

我有一个用 ES6和 Typescriptfoo编写的库。import/export

我有一个bar使用foo. bar也是用导出和 Typescript 编写的。我想bar在 AWS Lambda 上运行。

据我所知,我无法import/export在 Lambda(运行时节点 14.x)中使用

export const handler = async () => {...};
Run Code Online (Sandbox Code Playgroud)

会报错,但是

exports.handler = async () => {...};
Run Code Online (Sandbox Code Playgroud)

将不会。

所以在我的内部tsconfig我已经设置了:

    "target": "ES5", (or ES6)
    "module": "CommonJS",
Run Code Online (Sandbox Code Playgroud)

在编译器选项下。

这样,在 Lambda 上运行时我会收到错误,因为它现在尝试访问requirefoo库并表示它必须使用import.

我怎样才能实现我的最终目标?

在我看来,有 3 个选项,但我对其中没有一个了解很多,因为我对 JS 的细微差别还很陌生。

  • 让我的bar应用程序转译,或者使用 webpack,或者任何可以import在 cjs 中复制的工具。
  • 让我的foo库也包含一个 CJS 发行版(开始这样做时,我遇到了很多错误,我必须让该库在 es6 …

javascript amazon-web-services typescript aws-lambda

5
推荐指数
1
解决办法
4565
查看次数

为什么数组被最后一个方法覆盖?

我正在按升序和降序对数组进行排序。我做了两种方法,从main调用了它们。这些方法可以单独很好地工作,但是当我同时调用它们时,似乎最后一个覆盖了第一个的值。我知道应该很容易,但是我不知道发生了什么。有人可以向我解释吗?

import java.lang.reflect.Array;

public class Test {

    public static void main(String[] args) {
        int[] mayor, menor;
        int[] array1 = new int[] {5,3,10,8,27,4,1 }; 

        mayor= ordenMayor(array1);
        menor= ordenMenor(array1);

        for(int i=0; i<mayor.length ;i++) {
            System.out.print(" "+mayor[i]+" ");
        }

        System.out.println("");
        for(int i=0; i<menor.length ;i++) {
            System.out.print(" "+menor[i]+" ");
        }

        System.out.println("");
        for(int i=0; i<array1.length ;i++) {
            System.out.print(" "+array1[i]+" ");
        }


    }


    public static int[] ordenMayor(int[] arrayM) {
        int[] arrayMayor=arrayM;
        int mayor;
        int index;

        for(int i=0; i<arrayMayor.length - 1;i++) {
        mayor=arrayMayor[i];
        index=i;
            for(int j=i; j<arrayMayor.length …
Run Code Online (Sandbox Code Playgroud)

java sorting

0
推荐指数
1
解决办法
72
查看次数