• Почему подвисает Git Extensions и git log при вывода истории файла из большого репозитория?

    amk4
    @amk4 Автор вопроса
    По разделению истории - спасибо, интересно было попробовать.
    Общая история после replace правильно склеилась, только как-то странно повела себя после удаления remote.
    Хотел посмотреть что именно произойдет после удаления remote с бОльшей частью отсеченной истории. Ожидал, что "обрезанный" основной репозиторий вернется к состоянию до разделяющего коммита (после rebase), и можно будет remote подключать/отключать по мере необходимости.
    А репозиторий вернулся к полному начальному варианту со всеми коммитами, как до процедуры rebase.

    smartgit произвел отличное впечатление, особенно быстрые фильтры и по коммитам и по файлам.
    По кодировке - настройка производится в свойствах конкретного репозитория, а не в общих настройках приложения, где искал с ходу, т.е. можно для разных репо разные кодировки сохранять.

    В целом, видимо, пока вопрос откладывается до обсуждения реструктуризации репозитория.
    Еще раз спасибо за помощь!
    Написано
  • Почему подвисает Git Extensions и git log при вывода истории файла из большого репозитория?

    amk4
    @amk4 Автор вопроса
    По репозиторию - попробовал сжатие/очистку, за пол-часа репозиторий обработался, но, честно говоря, особого эффекта не дало.
    Мне кажется, что на искусственном репо, в котором bash-скрипт аккуратно, один за одним, корректно укладывает коммиты из svn, особо не будет предмета для оптимизации.
    Только поджать по месту, но в этом особо нет необходимости.

    Основной недостаток репозитория в том, что практически все файлы сконцентрированы в одной папке.
    git-sizer показывает это большим "беспокойством". Придется обсуждать структуру репозитория с разработкой.

    Processing blobs: 151372
    Processing trees: 55915
    Processing commits: 25504
    Matching commits to trees: 25504
    Processing annotated tags: 0
    Processing references: 3
    | Name                         | Value     | Level of concern               |
    | ---------------------------- | --------- | ------------------------------ |
    | Overall repository size      |           |                                |
    | * Trees                      |           |                                |
    |   * Total size               |  30.6 GiB | ****************               |
    |   * Total tree entries       |   846 M   | ****************               |
    |                              |           |                                |
    | Biggest objects              |           |                                |
    | * Trees                      |           |                                |
    |   * Maximum entries      [1] |  50.4 k   | !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
    |                              |           |                                |
    | Biggest checkouts            |           |                                |
    | * Number of files        [2] |  55.6 k   | *                              |


    Эксперимент по совету из документации сайзера (Does the repository include gigantic trees (directories)?), с разбиение на папки по 2-3 файлов тысячи показал совсем другую картину (в лучшую сторону).
    Написано
  • Почему подвисает Git Extensions и git log при вывода истории файла из большого репозитория?

    amk4
    @amk4 Автор вопроса
    extensions выбрал за возможность отображения CP866.
    За совет по клиенту спасибо, первое впечатление очень позитивное, поищу, есть ли поддержка кодировки или надо будет пробовать внешние редакторы/сравнение.
    В папке приложения файл cp866.enc есть, но во встроенном редакторе с ходу не получилось просмотреть 866 кодировку.
    Попробовал несколько коммитов с сообщениями в 866 - они в клиенте отобразились корректно.
    Написано
  • Как посмотреть причины ошибок при старте argocd в локальном кластере k8s?

    amk4
    @amk4 Автор вопроса
    По Evicted предположил, что что-то не то с нодами - и правда, argocd съел все место.
    "The node was low on resource: ephemeral-storage"

    # kubectl get pod/argocd-applicationset-controller-5f975ff5-97mx5 -n argocd -o yaml | grep status: -A10
    status:
      conditions:
      - lastProbeTime: null
        lastTransitionTime: "2024-01-29T10:53:39Z"
        message: 'The node was low on resource: ephemeral-storage. Threshold quantity:
          1046402268, available: 683620Ki. '
        reason: TerminationByKubelet


    Добавление места на все ноды ожидаемо помогло подняться всем служебным подам.
    Написано
  • Как выполнить код для каждого вхождения подстроки в строке?

    amk4
    @amk4 Автор вопроса
    AUser0, чтобы закрыть вопрос ответом - просьба скопировать коммент в отдельный ответ - поставлю галочку.
    Написано
  • Как выполнить код для каждого вхождения подстроки в строке?

    amk4
    @amk4 Автор вопроса
    Спасибо, конструкцию запомню, явно пригодится.
    Но именно тут одним оператором не получится - на начальный момент еще нет данных, чем заменять.
    Сначала задачу надо выделить выделить, потом сходить с ней в редмайн, и заменить полученным в ответ значением.

    В комментариям к основному вопросу помогли egrep'ом, хорошо подходит.
    Тот комментарий можно пометить ответом?
    Написано
  • Как выполнить код для каждого вхождения подстроки в строке?

    amk4
    @amk4 Автор вопроса
    О, то, что надо, спасибо!
    А я пробуя grep -o не догадался решетку перед [0-9] поставить)))

    Пришлось сделать громоздко, но работает...
    i=0
    ISSUE_LOCAL=""
    while [[ ${LINE:i:1} != *[^0-9]* ]] 
    do
      ISSUE_LOCAL=$ISSUE_LOCAL${LINE:i:1}
      let "i+=1"
    done
    Написано
  • Как выполнить код для каждого вхождения подстроки в строке?

    amk4
    @amk4 Автор вопроса
    SunTechnik,
    замена выполняется над входной строкой - хук гита над коммит-сообщением, с заменой номеров задач

    В подавляющем количестве сообщений одна задача, но может быть и больше.

    Сначала отдельно выделить задачи не пришло в голову, может надо попробовать
    Написано
  • Как посмотреть причины ошибок при старте argocd в локальном кластере k8s?

    amk4
    @amk4 Автор вопроса
    По Evicted предположил, что что-то не то с нодами - и правда, argocd съел все место.
    До сих пор я тестировал всякие мелкие деплои и им карманного кластера хватало.

    # kubectl get pod/argocd-applicationset-controller-5f975ff5-97mx5 -n argocd -o yaml | grep status: -A10
    status:
      conditions:
      - lastProbeTime: null
        lastTransitionTime: "2024-01-29T10:53:39Z"
        message: 'The node was low on resource: ephemeral-storage. Threshold quantity:
          1046402268, available: 683620Ki. '
        reason: TerminationByKubelet


    Добавление места на все ноды ожидаемо помогло подняться всем служебным подам.
    Но все деплои остались READY 0/1...

    С ходу по describe deployment.apps/argocd-server не увидел причин, поэтому просто удалил всё и заново сделал apply. Все поднялось, буду пробовать...
    Написано
  • Как разделить pipeline в зависимости от типа файла?

    amk4
    @amk4 Автор вопроса
    Я думал разные проекты придется делать.
    Есть возможность создания разных репозиториев в одном проекте? Схожу в документацию.
    Написано
  • Как в актуальной версии curl применить tls 1.0 (или как собрать старый curl для этого)?

    amk4
    @amk4 Автор вопроса
    Да, к сожалению, так и не смог собрать на новом узле старый curl со старым openssl.
    Хотя задача для практики интересная была...

    Поэтому так и сделал - взял контейнер SLES 11sp4, там вообще еще ssl3 актуален...
    Написано
  • Как в актуальной версии curl применить tls 1.0 (или как собрать старый curl для этого)?

    amk4
    @amk4 Автор вопроса
    Нашел пакет, в котором эта библиотека, поставил.
    https://packages.ubuntu.com/ru/jammy/amd64/libaxtl...

    Все равно ld ее не видит /usr/bin/ld: cannot find -laxtls
    Подскажите, пж, как правильно направить линкер на нее?

    # dpkg -i ./libaxtls1_2.1.5+ds-1build2_amd64.deb
    Selecting previously unselected package libaxtls1:amd64.
    (Reading database ... 66185 files and directories currently installed.)
    Preparing to unpack .../libaxtls1_2.1.5+ds-1build2_amd64.deb ...
    Unpacking libaxtls1:amd64 (2.1.5+ds-1build2) ...
    Setting up libaxtls1:amd64 (2.1.5+ds-1build2) ...
    Processing triggers for libc-bin (2.23-0ubuntu11.2) ...
    
    # ldconfig -v | grep axtls
    ...
            libaxtls.so.1 -> libaxtls.so.1.2
    
    # find / -name libaxtls.so*
    /usr/lib/x86_64-linux-gnu/libaxtls.so.1.2
    /usr/lib/x86_64-linux-gnu/libaxtls.so.1
    
    # ./configure --with-zlib --with-ssl --disable-shared
    ...
      curl version:     7.37.1
      Host setup:       x86_64-unknown-linux-gnu
      Install prefix:   /usr/local
      Compiler:         gcc
      SSL support:      no      (--with-{ssl,gnutls,nss,polarssl,cyassl,axtls,winssl,darwinssl} )
    
    # cat ./config.log | grep "\-laxtls"
    ...
    /usr/bin/ld: cannot find -laxtls
    Написано
  • Как в актуальной версии curl применить tls 1.0 (или как собрать старый curl для этого)?

    amk4
    @amk4 Автор вопроса
    Те же ... только в профиль...

    openssl:
    wget https://www.openssl.org/source/openssl-1.0.2g.tar.gz
    tar xzf openssl-1.0.2g.tar.gz
    cd openssl-1.0.2g/
    ./config
    make


    Похоже, что собрался (варнинг по конфигу разве что...)
    ./apps/openssl version
    WARNING: can't open config file: /usr/local/ssl/openssl.cnf
    OpenSSL 1.0.2g  1 Mar 2016
    
    # pwd
    /opt/openssl-1.0.2g


    curl:
    wget https://curl.se/download/curl-7.47.0.tar.gz
    tar xzf curl-7.47.0.tar.gz
    ./configure --with-ssl="/opt/openssl-1.0.2g" --disable-shared


    Тот же результат:

    curl version:     7.47.0
      Host setup:       x86_64-pc-linux-gnu
      Install prefix:   /usr/local
      Compiler:         gcc
      SSL support:      no      (--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl} )


    В логе все то же:
    /usr/lib64/gcc/x86_64-suse-linux/13/../../../../x86_64-suse-linux/bin/ld: cannot find -laxtls: No such file or directory
    Написано
  • Как в актуальной версии curl применить tls 1.0 (или как собрать старый curl для этого)?

    amk4
    @amk4 Автор вопроса
    Посмотрел лог, причина в этом?
    Что это за -laxtls, подскажите, как ее предоставить компилятору?

    configure:24378: checking for ssl_version in -laxtls
    configure:24400: gcc -o conftest -O2 -Wno-system-headers   conftest.c -laxtls   >&5
    /usr/lib64/gcc/x86_64-suse-linux/13/../../../../x86_64-suse-linux/bin/ld: cannot find -laxtls: No such file or directory
    collect2: error: ld returned 1 exit status
    configure:24400: $? = 1
    configure: failed program was:
    | /* confdefs.h */
    ...
    | }
    configure:24409: result: no
    configure:24442: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.
    configure:24444: WARNING: Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this.
    Написано
  • Как в актуальной версии curl применить tls 1.0 (или как собрать старый curl для этого)?

    amk4
    @amk4 Автор вопроса
    Похоже, мои действия по сборке не совсем верны, SSL support остается "no"
    Что-то не так?

    # whereis ssl
    ssl: /etc/ssl /usr/share/ssl /usr/share/man/man7/ssl.73ssl.gz
    
    /opt/curl-7.47.0 # ./configure --with-ssl=/etc/ssl
    checking whether to enable maintainer-specific portions of M
    ...
    configure: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.
    configure: WARNING: Use --with-ssl, --with-gnutls, --with-polarssl, --with-cyassl, --with-nss, --with-axtls, --with-winssl, or --with-darwinssl to address this.
    ...
    configure: Configured to build curl/libcurl:
    
      curl version:     7.47.0
      Host setup:       x86_64-pc-linux-gnu
      Install prefix:   /usr/local
      Compiler:         gcc
      SSL support:      no      (--with-{ssl,gnutls,nss,polarssl,mbedtls,cyassl,axtls,winssl,darwinssl} )
      SSH support:      no      (--with-libssh2)
    ...
    Написано
  • Как в актуальной версии curl применить tls 1.0 (или как собрать старый curl для этого)?

    amk4
    @amk4 Автор вопроса
    Т.е. мне надо на целевом узле сначала собрать какой-то старый openssl?
    А потом со ссылкой на него - собрать старый curl с ключем ./configure --with-ssl=старый openssl
    Написано
  • Не удается использовать аутентификацию по ключу ssh2 при подключении far'ом?

    amk4
    @amk4 Автор вопроса
    В общем, пока не авторы не обновят NetBox добавив поддержку SHA-2, по ключам из Far'а без включения на сервере старого SHA-1 не войдешь...
    С WinSCP проще - в 6й версии это реализовали, у меня 5я стояла...
    Написано
  • Не удается использовать аутентификацию по ключу ssh2 при подключении far'ом?

    amk4
    @amk4 Автор вопроса
    Так из-за конфигов сервера все и происходит - ssh-rsa уже исключен из поддерживаемых.
    А разрешать принудительно старый алгоритм "PubkeyAcceptedAlgorithms +ssh-rsa" не позволяют безопасники.
    Написано
  • Необходимо ли каждый раз устанавливать модули nodejs/npm при диплое приложения?

    Может со времени вопроса найдется более развернутый ответ?
    Написано
  • SQLNET.INBOUND_CONNECT_TIMEOUT не применяется на клиенте?

    amk4
    @amk4 Автор вопроса
    На маршруте до заказчика нашелся участок с полосой 20мбс, на момент загрузки мониторинг показал, что мы всю съедали.
    Поставили меньше потоков - пару раз прошло успешно, но все еще иногда с проблемами.

    С учетом того, что промышленная загрузка будет уже в локальной сети, думаю, проблема не проявится.
    И тюнить OraNet до устойчивого коннекта на плохом канале не требуется, так что глубже уже не буду погружаться.

    Большое спасибо за помощь!
    Написано