Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

l2u-portal

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

l2u-portal

## Структура проекта * configs - папка для настроек, специфичных для различных окружений * extensions - папка для различных расширений стандартного функционала портала (хуки) * modules - папка для хранения модулей * themes - папка для хранения тем *

  • 1.0.0
  • unpublished
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

Портальная часть Системы L2U

Структура проекта

  • configs - папка для настроек, специфичных для различных окружений
  • extensions - папка для различных расширений стандартного функционала портала (хуки)
  • modules - папка для хранения модулей
  • themes - папка для хранения тем
  • override - папка для хранения модулей, которые должны деплоиться через osgi/marketplace/override
  • tests - папка для хранения функциональных тестов

Сборка проекта

  • После клонирования репозитория нужно выполнить команду ./gradlew initBundle
  • выполняем команду ./gradlew clean build deploy
  • Все необходимые артефакты будут расположены в папке bundles

Использование моков

Для использования моков вместо сервисного слоя необходимо деплоить артефакты *-mock вместо *-impl

Conventions

  • Для независимости от сервисного слоя разрабатываем mock модули

  • Используем классический фиче-бранч:

    • Под каждую задачу создаётся отдельная ветка от develop

    • Коммиты разделяются логически и имеют осмысленный текст

    • Слияние в develop происходит через pull-request:

      • в аппруверы ставятся техлид и тестировщик
    • При необходимости слияния в master создается ветка с названием вида "rc-ВЕРСИЯ" из develop

    • После тестирования релиз-кандидата ветка rc сливается в master и проставляется тег с соответствующей версией. Также ветка master вливается в develop

    • При необходимости хотфикса: создается ветка с названием вида "hotfix-ВЕРСИЯ". В остальном аналогично 1.5

  • Используем единые правила форматирования кода (emdev-style.xml)

  • Переменные объявляются вверху класса

  • При объявлении reference по возможности сокращаем имя переменной (Например: userLocalService -> userLS)

  • Если возникла необходимость вытащить код из исходиков лайфрея

    • Размещаем его в оригинальном пакете (com.liferay...)

    • Все изменения вносим с помощью наследования в пакетах (ru.emdev...)

    • Если необходимо внести изменения именно в оригинальный файл (например, изменить область видимости)

      • необходимо закомментировать строку с пометкой "ORIGINAL"

      • внести изменение и указать номер задач

    • В JavaDoc оригинального файла необходимо указать ссылку на новый файл и номер задач

    • Имя нового файла должно совпадать с именем оригинального файла

Необходимые настройки

  • В портлетах проекта осуществляются редиректы к портлетам из других инстансов портала. Без дополнительных настроек при каждом таком редиректе liferay будет сыпать в логи warning, что редирект не позволен. Чтобы этого избежать необходимо добавить несколько property в portal.ext-properties. Варианта 2:
    • redirect.url.security.mode=domain
      redirect.url.domains.allowed=*.emdev.ru
      

      Первая property устанавливает, проверка возможности произвести редирект осуществляется по доменному имени. Второй пропертей указываются разрешенные доменные имена.

    • redirect.url.security.mode=ip
      redirect.url.ips.allowed=127.0.0.1
      

      Первая property устанавливает, проверка возможности произвести редирект осуществляется по ip-адресу. Второй пропертей указываются разрешенные ip-адреса.

Редирект будет работать и без указанных property, но при каждом переходе в логах будет WARNING

Фронтенд

Для фронтенд-разработки модулей проекта, некоторый dev-функционал (например настройки прокси) вынесен на уровень корня.

Чтобы он заработал, нужно

  1. Авторизоваться во внутреннем npm, если ещё не делали этого ранее, командой npm login --registry=https://nexus-l2u-cicd.apps.okd.listen2u.tech/repository/l2u-npm-host, используя ваши учётный данные LDAP. Документация

  2. Выполнить npm i в корне портала.

  3. Создать файл .env (он в gitignore) со следующим содержимым (cookies с авторизацией на dev-стенде):

    PROXY_COOKIES="Тут должна быть строка заголовка Cookie, которую нужно скопировать из любого запроса браузера после авторизации на dev-стенде"
    

Документация

Техническая документация по проекту собирается и запускается командой npm run docs.

Предварительно, нужно выполнить первые два шага из раздела Фронтенд выше.

FAQs

Package last updated on 29 Sep 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc