Skip to content

Commit

Permalink
Merge to master - Release 2.7.0.3 - New UI, Multilingual integration,…
Browse files Browse the repository at this point in the history
… New metadata mode and docker images (#240)

* use link text component to implement external link component

* use link text component to implement internal link component

* use internal and external links component in the label link component

* add previews to link text components

* use the table component in the ontology mappings tab

* add table component (style, preview and code)

* make dropdown content. with no default padding

* update concept details component to use the Table and dropdown component

* add concept details component preview

* update collection, concept, label_xl and scheme views with the new concept details component

* migrate notes table to use Table component

* add pills  version  for the tabs component

* migrate concept show to use the pill version of the tab component

* add circle progress bar component (style, JS, code and preview)

* add option to the tabs container to have  pinned right action buttons

* add the concept show tabs go to json and purl buttons pinned to in right

* add to the ontology viewer tabs a language selector pinned to the right

* change internal link icon in link text component

* fix button component in lookbook

* add secondary button to lookbook

* update search input component to have form-control style by default

* change agent search input to use it's Id instead of name to find it

* add Jquery data table to the admin agents table

* change agent search input to use it's Id instead of name to find it

* update nested form component to have an empty state to send to the back

* fix metadata curator not save agent update (bug still in changed_values)

* add display agent in the metadata curator

* handle the display of no array agents in summary page

* add generate_agent_input helper to the submission helpers

* fix submission save/update error state

* update display agent to show agent affiliations

* make select input by default not open to add values

* fix text field component not using the required argument

* remove the hardcoded hasCreator and publisher inputs in submission from

* add concept sub_menu helpers

* use sub_menu helpers in the concept browser

* update collection member count redirection sub_menu to use list

* install tom select

* update select component with tom select

* update search input component to handle custom link turbo targets

* update search input component to have form-control style by default

* remove no used home search controller replaced with search input

* fix. ontology search input  component ajax_url argument to add ?acronym=

* fix home page search input style

* migrate search input style from home.scss to search_input.scss

* handle for agent show the case they are string

* handle contact nested form empty state

* add margin top and bottom for the nested form component

* update nested form component to have an empty state to send to the back

* handle contact nested form empty state

* fix select component id

* use not centred layout for the select input previews

* remove the select id in the select input component template

* remove is_selected_value variable in the select input component

* make concept list frame not load if concept_collections param is empty

* add 'data-turbo-frame':'_top' to member count link to show  top loader

* remove container class from the new and edit submission views

* handle string errors (location file not given ) in the submission form

* merge primary and secondary button in one component

* remove undesired secondary button css file

* add icon property to regular button component

* add link type for regular button component

* install and configure  omniauth gems

* add a helper to get omniauth_providers details

* add external auth providers icons in the login in page

* add  oauth login action

* add omniauth_token_provider helper

* add outline state to the tabs component

* migrate concept show to use tabs outline

* migrate concept browser to use tabs outline

* Add the checked property to the chips component

* show by default one row in the nested from input component

* Add email, password, url components to lookbook

* refactor select input component template to use the rails helper

* use stimulus values in select input component controller

* migrate date, email, password, url and text  component to inline call

* fix text area component not showing the value given as argument

* move date, file,text_area,text,password,url, email to one preview file

* move input field component to input namespace

* remove internal-link icon default height

* add count slot to the chips components

* add ontology viewer style file , for tabs responsiveness

* fix a min width for the concept browser

* update chips component  to add label attribute

* fix ontology viewer header not centred

* handle date time field exception when value is nil

* fix tabs container component  type check

* update chip button style

* override bootstrap text-primary color

* update chips button component to have optional html attributes

* replace open-popup icon with popup-link icon

* update ontology viewer header style and template

* add ontology count_subscriptions helper

* add show licence details popup action

* add attribute_enforced_values helper to enforced values of an attribute

* use date time field component to display the uploaded date in the header

* use rounded button components in the header page for the json and edit

* use chip button component  for license button to popup in the  header

* Add icon button variation to regular button component

* update the design of page not found

* add info tooltip component

* add header text component

* disable by default <p> bottom margin every where

* add card component

* add image component

* add list layout component

* add borderless and layout fixed states for the table component

* add to summary section action links and info tooltip slots

* update dropdown to add empty state and use header & list components

* add for field container component an html content label slot

* update text area field to use span instead of p, to have less padding

* add to table row component an optional css class argument

* update chip button style to have the same line height in all the states

* make link to modal helper use PopupLinkText component

* add components helper file, regrouping helper to use component easily

* Add size parameter to button component

* Add color parameter to button component

* Add state parameter to the button component

* add slim state to the regular button component

* add slim, danger, warning, disabled, noAnimarion variations to button component

* groupe all buttons in one folder in the lookbook

* put ontology subscribe button component preview in buttons namespace

* fix function names duplication in the buttons previews and link preview

* extract button loader component from regular button component

* refactor regular button components to have less arguments and code duplication

* set button component type by default equal 'submit'

* fix buttons component default padding

* fix omniauth_provider_info helper not working for github

* put again the type argument for button component

* fix slim state of the button loader component

* make the call the to displayAnimation event triggered only if enabled

* hide button icon when it's not initialized to avoid undesired padding

* Feature: Add progress pages component (#328)

* add progress pages component

* put again the type argument for button component

* fix progress pages item not center if test is long

* make progress pages container take full width by default

* Fix progress item position (first & last one) to be aligned with the content

* fix progress item checked state to show the icon and the good background

* make the progress page component preview width bigger

---------

Co-authored-by: Bilel Kihal <[email protected]>

* Feature: add alert component (#330)

* add alert component types icons

* create alert component and add to it it's logic

* add alert component structure and style

* Add alert component close icon

* add close logic to alert component

* add lookbook preview for alert component

* make alert component get closed auto after a delai

* add auto close option for the alert component with a configurable delay

* add the option to alert component to use also the content as message

* replace old alert message component usage with the new one

---------

Co-authored-by: Syphax bouazzouni <[email protected]>

* do the appropriate changes to the usage of the button component according to the updates we did

* fix animation id problem (animation starts in the wrong button) in button component

* add something went wrong page

* Feature: Implement the new upload ontology form (#292)

* use inline svg in file input loader component

* add hint to text input component

* add error state to input field component

* add helper text to input field component

* add notes to input field component to explain how to use it

* combine text area input component with input field component

* groupe inputs in one folder in the lookbook

* fix style issues in input field component

* refactor input field component code to remove repetition

* remove the  duplicated alert component preview

* make the input field component generic using a the content slot

* implement form date component

* implement form text area component

* implement form text input component

* duplicate the select component to be in the "form" namespace

* fix select input component inversed open_to_add_values argument usage

* move and rename file input loader  component to be in the form module

* update select component to use InputFieldComponent to have a label

* remove unsed text in NestedFormInputComponentPreview

* Fix bug of select list view of ontology (#289)

* Add Chosen.js functionality to fix bug of select views of ontolgy

* Add Chosen.js functionality for list views ontologies

* fix bug of update ontology where there is no view

* Refactor code

* Delete ponse = @ontology.update

* fix nested form component  inputs focus color to use primary variable

* add upload ontology from style file

* extract from upload ontology from the location partial

* update upload ontology form design

* make the upload ontology form button style apply also submit button

* add id argument to chips components to permit having multiple chips with same name

* fix label not showing for the from select component

* put the correct input names in the new ontology form

* replace the finish div in the new ontology form with a submit tag

* use for the administrated_by input with the form select component

* implement the backend create action for the new upload ontology form

* fix text area component not showing the value given as argument

* add the default values for the inputs in the new ontology form

* extract submission_from_params method from the save_submission concern

* handle new ontology upload errors  in the create action

* add default empty submission in the new action

* add type parametre to text_input_component so we can specify type as email, number ..

* make nested form component start by default by one form initialized

* add URI field to the upload ontology process

* add search input component

* add ontology search input component re-using search-input component

* re-use ontology search input component in the topnav

* re-use the ontology-search-input in the home

* update search-input component to make it more generic

* rename view components "form" namespace to "input"

* create the display namespace for the data display  components

* create the layout namespace for view component that structure content

* use the table component in the ontology mappings tab

* add table component (style, preview and code)

* make dropdown content. with no default padding

* update concept details component to use the Table and dropdown component

* add concept details component preview

* update collection, concept, label_xl and scheme views with the new concept details component

* migrate notes table to use Table component

* install tom select

* update select component with tom select

* use not centred layout for the select input previews

* remove the select id in the select input component template

* remove is_selected_value variable in the select input component

* fix select component id

* add pill button component

* add loader component small option and previews

* update ontology subscribe component design and add preview

* move rounded button preview to the button  namespace

* extract modal helpers into a helper file

* use the new modal helpers instead of writing the view component or frame

* add option to modal to show in connect alone

* add modal component style

* add modal component preview

* move the modal component preview into the layout namespace

* Update the design of the switch component

* add switch input  component preview

* update search input component to handle custom link turbo targets

* update search input component to have form-control style by default

* remove no used home search controller replaced with search input

* fix. ontology search input  component ajax_url argument to add ?acronym=

* fix home page search input style

* migrate search input style from home.scss to search_input.scss

* add margin top and bottom for the nested form component

* update nested form component to have an empty state to send to the back

* handle contact nested form empty state

* migrate the fair score js code to stimulus to make it work with turbo

* remove the old fair_score.js code

* fix home page responsiveness issues

* fix footer responsiveness

* fix nav bar responsiveness and add admin to nav items

* fix home annotator/recommender section title

* fix home responsiveness for small screens

* add link text component

* use link text component to implement popup link component

* use link text component to implement external link component

* use link text component to implement internal link component

* use internal and external links component in the label link component

* add previews to link text components

* change internal link icon in link text component

tmp

tmp

tmp

tmp

tmp

tmp

tmp

tmp

tmp

tmp

* refactor select input component template to use the rails helper

* use stimulus values in select input component controller

* Add email, password, url components to lookbook

* use url component in upload ontology process

* fix location subform selection via text on upload ontology

* change date of creation by modification date field, and add comment of changes field when upload new version of an ontology

* fix select input component to use the name

* use the correct name for the visibility and  allowed to view inputs

* make ontology edit and new form use multi part

* fix URI input name and value to replace ontology by submission

* add disable state to input field component

* make acronym field disabled when uploading a new version of an ontology

* migrate the ontology picker single partial  to select component

* Add the checked property to the chips component

* update date component with flatpicker

* add disabled state to input field component

* update submission helpers with the new components

* refactor update ontology code to remove undesired ifs

* add text field and text area components to lookbook

* add select component to lookbook

* add date field to the lookbook

* add "inline_svg" gem  to use svg in files

* make the components preview container include JS cod if needed

* add language field component

* add link field component

* add date_time field component

* add license field component

* add text area field component

* add summary section component preview

* add dropdown component

* add field container component to show a label with it's value vertically

* add nested form input component preview

* add a pop-up with list of ontologies in group and category admin table

* Revert "add a pop-up with list of ontologies in group and category admin table"

This reverts commit c4b391a9d3e5272703051922bcb9495ac35297c8.

* add a select to update ontologies in the pop-up edit of group in admin table

* add a select to update ontologies in the pop-up edit of category in admin table

* Refactor code

* refactor code and fix bug

* remove old undesired text area input from lookbook

* add Upload file input component to lookbook

* combine all input components in one globale component

* remove style params from input field component

* recover text area field component (after deleting it by mistake in a previous commit

* add hint to text input component

* add error state to input field component

* add helper text to input field component

* add notes to input field component to explain how to use it

* combine text area input component with input field component

* groupe inputs in one folder in the lookbook

* make the input field component generic using a the content slot

* implement form date component

* implement form text area component

* implement form text input component

* duplicate the select component to be in the "form" namespace

* move and rename file input loader  component to be in the form module

* update select component to use InputFieldComponent to have a label

* remove unsed text in NestedFormInputComponentPreview

* fix nested form component  inputs focus color to use primary variable

* add upload ontology from style file

* extract from upload ontology from the location partial

* update upload ontology form design

* make the upload ontology form button style apply also submit button

* add id argument to chips components to permit having multiple chips with same name

* fix label not showing for the from select component

* put the correct input names in the new ontology form

* replace the finish div in the new ontology form with a submit tag

* use for the administrated_by input with the form select component

* implement the backend create action for the new upload ontology form

* fix text area component not showing the value given as argument

* add the default values for the inputs in the new ontology form

* extract submission_from_params method from the save_submission concern

* handle new ontology upload errors  in the create action

* add default empty submission in the new action

* add type parametre to text_input_component so we can specify type as email, number ..

* make nested form component start by default by one form initialized

* add URI field to the upload ontology process

* rename view components "form" namespace to "input"

* create the display namespace for the data display  components

* create the layout namespace for view component that structure content

* add modal component preview

* move the modal component preview into the layout namespace

* change internal link icon in link text component

tmp

tmp

tmp

tmp

tmp

tmp

tmp

tmp

tmp

tmp

* add text field and text area components to lookbook

* add date field to the lookbook

* fix label not showing for the from select component

* fix text area component not showing the value given as argument

* add type parametre to text_input_component so we can specify type as email, number ..

* refactor select input component template to use the rails helper

* use stimulus values in select input component controller

* Add email, password, url components to lookbook

* use url component in upload ontology process

* fix location subform selection via text on upload ontology

* fix select input component to use the name

* use the correct name for the visibility and  allowed to view inputs

* make ontology edit and new form use multi part

* fix URI input name and value to replace ontology by submission

* migrate the ontology picker single partial  to select component

* Add the checked property to the chips component

* Merge remote-tracking branch 'origin/feature/update-upload-ontology' into feature/update-upload-ontology

* change date of creation by modification date field, and add comment of changes field when upload new version of an ontology

* add disable state to input field component

* update submission helpers with the new components

* refactor update ontology code to remove undesired ifs

* add id parameter to input field component

* replace finish button in upload ontology by the button component

* Add size parameter to button component

* Add color parameter to button component

* Add state parameter to the button component

* make finish button animated in upload ontology process

* add progress pages component

* put again the type argument for button component

* fix progress pages item not center if test is long

* migrate upload ontology form to use progress pages component

* make progress pages container take full width by default

* update login page button component usage to have an ID

* put again the removed JS code for visibility and is a view

* fix chips style padding removed from merging with the browse branch

* update date input in the ontology form to use the metadata helper

* fix chips style in upload ontology form

* remove old new submission form from the bottom of the new ontology page

* Fix select multiple items, delete icon style in select component

* fix upload ontology style to have less margin bottom

* extract ontology updater and saver concern form ontologies controller code

* update submission create action tu update also the ontology

* use AlertComponent to display ontology form error messages

* create input helpers to use inputs component more easily and use them in ontology form

* remove no more used style code in upload ontology style file

* fix ontology form date and contact inputs not showing error message

* set update ontology to true in the create action of submission controller

* fix alignement of chips and button components

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>
Co-authored-by: SirineMhedhbi <[email protected]>
Co-authored-by: Sirine Mhedhbi <[email protected]>

* Feature: Update summary page design (#244)

* re-style persons and organizations section

* add safety parameter to metrics variables

* re-style identifiers bloc

* relocate the projects sections with visits

* modify the table of verisons' name to submissions

* add the condition to the fair score bloc for logged in and non logged in users

* remove contact title

* remove creation text from the general information bloc

* remove unecessary containers

* remove the title " versions"

* remove the unecessary code

* remove the links bloc to replace it with the identifiers

* relocate the methodology bloc

* remove projects bloc and relocate it

* remove duplicated code

* remove static code from the competency question variable

* add the date array

* add the date array to show the dates section

* update Gemfile.lock file

* add keywords and keyclasses containers

* remove unecessary margins

* add the style to modal component

* add the function " show dates " to ontologies controllers

* remove the duplicated fair score title

* remove released column from the submissions table

* add prettier file

* fix components index style typo issue

* add pull url section in summary if user is an the ontology admin

* implement projects section in the summary page

* fix an issue in the alert message component not showing the content

* add circle progress bar component

* override bootstrap text-primary color

* add submission metadata component

* update summary additional metadata content to show all the attributes

* add stimulus read more  to package.json

* show corresponding  lang in the tree view

* remove audience from aditionnal metadata

* add download links array to the download_link function

* update the summary page css

* re-style the submissions table in the summary page

* update the contact and release date information

* chnage categories and domains to categories and subjects

* remove the old contact information

* change the identifier bloc to an open one

* add dates bloc to summary page

* add the json entry to the links bloc

* add projects variables

* add methodology bloc

* remove visits bloc to relocate it

* relocate the visits bloc

* add views bloc to the summary page

* Show data in platform language when lang is equal to 'all'

* fix sort_by in collections and schemes

* make the summary two columns bigger

* hide the fair score section if not enabled or ontology is AGROVOC

* make sub.publication iterable

* use tooltip to show language in concept tree links

* re-style the fair-score bloc with the new design

* re-style fair-score bloc

* Auto stash before merge of "feature/update-summary-page-design" and "origin/feature/update-summary-page-design"

* re-locate the logo in the summary page

* chnage additionnal metadata modal title  to all metadata

* align the general information and the logo

* add function show-category-name to domains section

* add summary page dropdown component

* add summary section component

* extract summary page section to partials

* use display_in_multiple_languges methode to show properties in multiple langs

* add tooltips to show language in tree view

* change 'process_concept' method name to 'language_hash'

* define 'display_in_multiple_languages' method

* use 'langauge_hash' methode in collection instead of 'process_concept'

* cls_id to string

* use 'langauge_hash' methode in schemes instead of 'process_concept'

* update tooltip controller to support position

* use 'langauge_hash' methode in _list_view instead of 'process_concept'

* use 'display_in_multiple_languges' to display properties

* fix missing 'end' in application helper

* display_in_multiple_languges in schemes

* fix language_hash method name typo

* check if prefLabel is nil

* use tooltip to show preLabel lang in schemes

* use tooltip to show preLabel lang in collections

* use tooltip in collection

* fix a typo display_in_multiple_languages function name

* extract link_to_scheme helper for schemes tree view

* extract helpers to display the collections list view

* refactor language related helpers code in application_helper

* add language argument to scheme and collection tree links

* refactor scheme and collection helpers to make it work for mutli-langs

* move submission_metadata into the application helper

* extract summary page section to partials

* make the summary page responsive

* disable summary ontology relation network  mouse zoom in/out

* move fairness, submission & metrics sections of summary page to bottom

* make the submissions table borderless

* move see all metadata button to the summary description section bottom

* update the usage of the DropdownContainer Component in summary page

* fix summary ontology relation network height

* use the correct submission description value instead of a placeholder

* make the keyClasses of type link clickable

* hide Categories and subjects of the summary page if nil or empty

* migrate additional_metadata helper to  SubmissionMetadataComponent

* update Gemfile.lock

* remove container fluid for the appliance layout

* fix top_nav responsiveness width

* fix design on summary page css

* update fair score bloc

* remove third row section in summary page

* Update Fair Score score section

* Add persons and organizations variables

* fix summary page inline SVG icons

* add natural language to the summary page description

* hide ontology hasDomain if empty in the summary page

* update summary page to make it work for the new keyclasses attribute

* Add link component to identifiers section on the summary page

* Add css to the identiders section' attributes

* updates vis's

* update chips button component to have optional html attributes

* fix language field to show the lexvo URL if  not matched

* make label ajax link component use the ChipsButton component

* show the go to API in the top let of the ontology viewer

* remove the duplicate get_link_for_cls_ajax helper

* update keywords section in the summary to use get_link_for_cls_ajax

* add show_licences method

* add licenses modal file

* add licenses modal

* put value as nil by default

* add condition to license modal

* add show license method to ontoloies controller

* add or operation to value and content

* make field container use content if given value is nil

* fix summary fair score not showing because the controller was removed

* fix submission edit page container layout

* fix topnav raising an issue when session does not contain ontologies

* unify the usage of submission_metadata everywhere

* use concept_link helper in the concept show view

* use ChipButton component for person & organization  in summary page

* fix field_container margin if using content not the given value

* migrate projects and usage information summary section to use components

* Remove maring in the class ontology-details-tabs

* fix ontology header responsiveness issues

* fix ontology-details-header-layout

* fix ontology details tabs layout

* fix summary page layout

* fix summary page responsiveness issues

* add metrics evolution popup in the summary page

* fix summary page creators input margin bottom in summary page

* fix submissions table dropdown button white space

* Revert "Merge branch 'feature/update-browse-page-design' into stage"

This reverts commit 5bffb8c6cc7f4ccdeb23babd5df7a0a7ae016252.

* Revert "Merge remote-tracking branch 'refs/remotes/origin/feature/support-multilingual-part-2'"

* Remove line 56/57 from .gitignore file

* Delete .prettierrc

* Delete depiction.svg

* Delete github.svg

* Delete test_visits.svg

* Delete openUp.svg

* add depiction section partial

* add depiction section partial

* Add identifier partial section

* Add visits partial

* Add all projects partial

* add projects partial

* Add views partial

* Add height line on the chip button

* Add condition to versionIRI prop

* update chip button

* Add properties tables to the ontology controller

* Use partials and properties on the summary page

* fix bug on the fair score section

* add conditions to identifiers

* add metrics evolution popup in the summary page

* Merge branch 'development' into feature/update-summary-page-design

* fix summary page creators input margin bottom in summary page

* fix submissions table dropdown button white space

* Revert "Merge branch 'feature/update-browse-page-design' into stage"

This reverts commit 5bffb8c6cc7f4ccdeb23babd5df7a0a7ae016252.

* Revert "Merge remote-tracking branch 'refs/remotes/origin/feature/support-multilingual-part-2'"

* remove the summary logo placeholder image

* fix the drodown button color

* fix summary page css

* add the tooltip to the dropwon container

* add condition to the tooltip usage

* fix the field container component

* include ApplicationHelper  to the summary section component

* add the info_tooltip to the card tiltle

* add the info_tooltip function to the application helper

* add the tooltip to the submission helper

* add the tooltip to components on the summary page

* add tooltip info to project section

* add condition to the icons on the general information section

* add tooltip infot to identifiers section

* create props array to the projects section

* refactor the project section

* fix the visits section download arrow

* add tootlip to summary page

* add ontology viewer style file , for tabs responsiveness

* fix a min width for the concept browser

* replace open-popup icon with popup-link icon

* remove no more used partials in the  summary page

* migrate submission table to use Table component

* clean summary style file and use new icons for ontology relation graph

* remove no more used show_depiction and info_tooltip code

* fix concept details raw section title padding

* use  action link slot for summary fairness  and submissions sections

* update fair score partial design

* use component and helpers in summary page partials

* migrate submission metadata component to use table component and display_attributes helper

* simplify summary  ontology_relations_data  code

* reverse metrics evolution data to have its chart  in the right direction

* migrate ontology relation network filter to use select input component

* remove no more used icons in summary page

* simplify ontologies controller summary action by using submission_metadata helper

* put again methods used by the index action

* handle ontologies with no submission summary page

* put temporary help message in summary page section

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>
Co-authored-by: Bilel Kihal <[email protected]>

* Feature: Update edit ontology design (#320)

* remove the unnecessaire variable is_selected_value from the select component haml file

* update submission form content to use attributes category not display

* make submission edit frame have a custom id from params

* extract submission form attributes category array

* fix submission from tabs style by removing the old edit-ontology-tab cls

* fix edit ontology tabs style

* fix edit submission error

* install tippy js for the hover notes

* Add see the wiki sentence in edit ontology page

* replace edit ontology buttons with component button

* make reset all fields button works in edit ontology page

* Make input field label font size bigger (12px --> 14px)

* add data attribute for select and text  components

* handle for the input field component the case  attributes are nil

* remove no more used form group component  and text field component

* add a label argument for nest agent input component

* make summary licenses popup use attr_label instead of attribute_infos

* fix tom select hidden input style to not take full width

* extract useTomSelect component tom select controller

* update search input component to use  InputFieldComponent

* update input field help text slot to support raw html display

* update submission location form JS to use 'var' instead of 'const'

to make it work even if the partial is re-render again in the same context (turbo frame reload)

* remove old submission contact and location form partials

* update ontology picker single to use select input helper

* use attr_label instead of generate_attribute_label helper in the metadata curator table header

* redirect ontology edit action to submission controller new or edit

* replace metadata selector component with a helper method

* update ontology form partial to have only ontology attributes in it

* update ontology new template to add submission attributes in it directly

* fix regular button  display animation by adding as argument a loader id

* update inputs helpers to add the arguments data, id and help

* extract from ontology and submission form the metadata_help_link helper

* update submission new action to redirect to the ontology new template

* add submission edit_properties action for a list of submission attributes

* add ontology details tab to the submission form

* add metadata and submission inputs helpers files

* simplify the submission form content and remove no more used helpers

* show in the submission edit action the new submission form template

* simplify the submission format form and use the new input helpers

* make the  select component inline rendered

* update tooltip to use Tippy.js

* add tooltip popovers for submission attribute inputs

* move submission form partial to the edit template

* transform  EditSubmissionAttributeButtonComponent to a helper function

* add the button "add new submission" to the ontology viewer header

* remove no more used  ontology controller update action

* fix nested turbo frame to be hidden when a parent frame is busy/loading

* create error_message_alert helper to display an alert with erroneous fields

* add required asteriks  to submission attribute that enforce existence

* make the submission location form partial work for existing submission

* fix submission format form partial syle

* transform submission form_content  the view that display update errors

* fix ontology form hasDomain and group inputs that can't be reset empty

* make selected_attribute? helper work for equivalent or direct attribute

* move back some code logic from ontology updated concern to controllers

* create render_submission_inputs helper to display inputs components

* use the default template of submissions controller edit action

* disable submission form categories tabs when the properties filter used

* handle submission pullLocation parameter update depending of isRemote

* update submission update controller to add ontology update step

* fix ontology metadata curator to use the  new submission form

* remove submission new template, replaced with ontologies new

* make attr_header_label use a custom label as argument

* add title to new and edit submission buttons in the ontology viewer

* put again the removed margin top of summary section only in summary page

* move submission_metadata to metadata_helper and application_controller files

* have custom labels for summary submission table header

* hide tooltip from attribute labels in the summary section

* remove the add et edit submission button in front the submissions table

* remove useless ontology value in submission updater

* redirect edit page to home if user not connected

* remove default today value from date input

---------

Co-authored-by: Bilel Kihal <[email protected]>

* make the not found page message customizable depending of the error type

* put again the old internal server error message with style fixing

* Feature: Update browse page design (#217)

* Update browse page design with the new design on figma

* Fix the problems in the design of the browse page and make it responsive

* Add the light color variable for differnet themes

* Extract the ontologies section in the browse page to be the src of the turbo frame

* Change the color of the turbo progress bar

* Update the design of the switch component

* Add the checked property to the chips component

* Add the filtering logic of the browse page

* Add the checked filters count in the browse page

* Remove the angular from the browse page

* In browse page, limit the ontology description to 3 lines and add a button show more to see the entire description

* remove duplicate action changed->turbo-frame#updateFrame in the browser

* add text truncate stimulus controller

* replace in the browser descriptions js with a controller to show more

* add timeago stimulus controller to show dates in a human readable way

* add ontology contacts and format to the ontology card

* remove old angular files

* yarn update to install the new JS dependencies

* add ontology browser page and empty state image

* refactor useHistory mixin

This reverts commit 719e45604eb6a303c5ca0fae9b34753a34f19ade.

* add count slot to the chips components

* add small version of the loader component

* add filters count by ontology

* add the count slots to the chips in the browse page

* use turbo streams to update  ontologies result and the filters  counts

* add ontology browse private icon

* add admin-color theme variable

* add private only  switch to the ontologies browser

* implement the private only ontologies filter

* add title tooltip for the browser filters chips

* update turbo_frame component to use a custom loader

* handle the case where submission publication attribute is not an array

* update infinite scroll component to add custom loader and be generic

* create and use tree infinite scroll component

* create ontology browser card component

* decrease the debounce time of the browser search input

* remove no more used get_metrics_hash function

* move submission filters methods to a concern module

* add back to top button and counter loader to the browse page

* implement and use submissions filter concern

* create browser ontologies partial

* update chips component  to add label attribute

* update tooltip controller to not show if title is empty

* update browse page filters section titles

* use the new chips component 'label' attribute for the browser filters

* fix the wrong browser count when show private only

* migrate the fair score js code to stimulus to make it work with turbo

* put again the accidentally removed ontology_params method

* prevent zombie submission with no ontology) bug in the browse page

* fix browse page layout issues

* fix unable to see full content of the filter collapsible block in the browse page

* move  deprecated and view cards of ontology down instead next to name

* remove default margin left of the pill button component

* add tooltip message to the ontology that is the view of another ontology

* change the layout of the browse page to have the upload button and search in same level

* add admin style classes

* add interactive option for use tooltip controller

* add disabled state to chips component

* show the filter count loader each time changed

* add released  year card to the ontology cards

* add the debug card to the ontologies card if user is admin

---------

Co-authored-by: Bilelkihal <[email protected]>

* Feature: Show multiple languages  (#252)

* refactor ontology_viewer_page_name to support multiple languages

* refactor sort_by in collection and schemes to support multiple languges

* update ontology_viewer title

* add all option in language selection

* show prefLabel with the specific language in case of all languages

* remove a forgotten debugger in the JS code of language change selector

* revert concept details prefLabel multiple language display

* show corresponding  lang in the tree view

* Show data in platform language when lang is equal to 'all'

* fix sort_by in collections and schemes

* make sub.publication iterable

* use tooltip to show language in concept tree links

* use display_in_multiple_languges methode to show properties in multiple langs

* add tooltips to show language in tree view

* change 'process_concept' method name to 'language_hash'

* define 'display_in_multiple_languages' method

* use 'langauge_hash' methode in collection instead of 'process_concept'

* cls_id to string

* use 'langauge_hash' methode in schemes instead of 'process_concept'

* update tooltip controller to support position

* use 'langauge_hash' methode in _list_view instead of 'process_concept'

* use 'display_in_multiple_languges' to display properties

* fix missing 'end' in application helper

* display_in_multiple_languges in schemes

* fix language_hash method name typo

* check if prefLabel is nil

* use tooltip to show preLabel lang in schemes

* use tooltip to show preLabel lang in collections

* use tooltip in collection

* fix a typo display_in_multiple_languages function name

* extract link_to_scheme helper for schemes tree view

* extract helpers to display the collections list view

* refactor language related helpers code in application_helper

* add language argument to scheme and collection tree links

* refactor scheme and collection helpers to make it work for mutli-langs

* fix sort in tree_link_to_concept and add return first in array on language_hash methode

* extract multi language helpers into a file

* make display_in_multiple_languages directly do the language_hash inside

* rename the helper get_concept_label to select_language_label

* move the not found prefLabel alert in the prefLabel  row

* catch concept list error when concept label is nil

* add main_language_label helper to show the concept label main language label

* fix loader showed in small state by default

* fix alert component text overflowing

* reset turbo progress bar to blue

* add id to tabs container component

* extract sorted_labels helpers for schemes and collections

* fix mappings new form not finding the ontology  by id bu by acronym

* use main_language_label helper for build_tree

* use main_language_label helper in ontology_viewer_page_name

* restore removed properties section content

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>

* Feature: Add search language selector (#309)

* add search language selector

* add language in the ajax request

* add flags to search select

* Merge branch 'development' into feat/multilingual

* customizing TomSelect controller

* use tomselect

* remove bootstrap select

* SelectComponent

* remove flag-icon and use his cdn instead

* use flag-icon cdn

* remove flag icon import statement

* change id for select lang

* remove << HEAD

* update tom select component to use options inner HTML text to show icons

* add lag-icons-rails and iso-639 gems to handle flags display and update code usage

* add language selector component

* remove tooltipster dependecies

* fix flag size in the summary page

* add selected argument  to LanguageSelector component

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>

* fix generated bug after edit group and category (#334)

* Feature : create a new component to display  status of submissions (#345)

* Create Submissions status component to display icons

* Add  alert and archive icons

* fix the width and height of icons

* add icon parameter to info tooltip component

* add spacer style css to display icon with text

* Use the component in the submission table

* Use icons in front of the name of each ontology on the browse page.

* Add logic to render icons for each status of submissions

* adapt the icons

* Display icons of status only if the admin is logged

* refactor ligne to test if session user is admin

* Change the conditions to display icons

* Add the removed code

* Fix : bug feedback window (#349)

* Fix bug of chips id

* Remove duplicated render of the feedback action 

* Fix bug of feedback page not showing as Popup

* remove unused images (#366)

* Feature: add IT and DE  internationalization for the homepage (#367)

* add 'i18n-tasks' and 'deepl-rb' gems to fix and translate missing locales

* add italian and german locales

* fix internalization of the home, annotator, login, recommender and user form

* Fix: the new homepage bugs (#370)

* translate home page

* fix search input (navbar and home position )

* fix nav items padding to not be stick the search input when admin

* Merge branch 'feat/multilingual-ui' into stage

* remove no more used help and about routes

* ensure the omniauth_provider_info is get when put a string argument (#372)

* Fix: the new summary page bugs (#371)

* update language field component to have a better display of not valid ISO links

* fix the error page image not displaying the good color

* fix turbo frame error text extraction from the new errors pages

* fix summary links section display to use link component

* catch remaining  cases when @concept is nil in the ontology viewer

* fix ontology subscribe button  error message not showing

* show a better  error message when no classes found

* fix the concept  dates list view to use the correct alert component

* add '.svg' to the LinkText components icons

* fix new ontology form error not displaying when acronym is already used

* fix concept details, inSchemes and In Collection chips with no margin

* not show narrower row in concept details

* Fix: the new ontology form bugs (#368)

* add the max date option to date inputs

* show the validity date input in the ontology form if status is retired

* fix in ontology form not revealed sections after not valid save

* add show SKOS form information reveal in the ontologies new form

* add reveal component to hide/show a content depending of a condition

* use reveal component to display or hide conditional inputs in the ontology form

* hide turbo frame error message when context changed (#369)

* Fix: the new submission edit form bugs (#373)

* add placeholder argument to select component

* add option to the nested form component to have an empty row at start

* fix select input id vs name mixing, making the submission_metadata_selector to not work as expected

* fix select input component where we can add inputs not valid by default

* fix new ontology form error state can't change acronym

* fix edit ontology metadata form error state not rendering

* reset agents input values to fetch there values if edit metadata on error state

* fix ontology viewOf detaching from  parent

* re-use attr_metadata helper where possible to not call multiple time to submission_metadata endpoint  taking to much time

* fix submission metadata wrong categories got from the API

* not show errors message inside nested inputs

* extract ontology form inputs into helpers to be re-used in submission form

* fix edit ontology metadata form error state not rendering

* hide ontology format input advanced options

* remove the display of an empty row by default for list_field_inputs

* fix usage of reset_agent_attributes concern

* Fix: disable pagination for the new browse page (#361)

* disable pagination for the browse page

* fix ontology browse sort by not selected from request params

* make work  show retired when unselected after been selected

* disable turbo links for the ontology browser card to redirect to good page

* update browse card layout to not hide the chips under the metrics cards

* add again retired filter in the browse page

* add the total count showing in the browse page

* enable again the sort by fair score and popularity

* use SquareBadge and Chips components in the ontology card

* remove default sort_by by creationDate if we use the search

* make the sort_by select width bigger in the browse page

* Fix: the new summary page bugs - part 2 (#374)

* update language field component to have a better display of not valid ISO links

* fix the error page image not displaying the good color

* fix turbo frame error text extraction from the new errors pages

* fix summary links section display to use link component

* catch remaining  cases when @concept is nil in the ontology viewer

* fix ontology subscribe button  error message not showing

* show a better  error message when no classes found

* fix the concept  dates list view to use the correct alert component

* add '.svg' to the LinkText components icons

* fix new ontology form error not displaying when acronym is already used

* fix concept details, inSchemes and In Collection chips with no margin

* not show narrower row in concept details

* fix label xl display in multilingual in concept details and label_xl show

* move ontology relation network complexity to the controller

* add an exception catch in the metrics evolution when an ontology metrics is nil

* hide action column of concept notes and mappings table

* fix the new project link after login to  redirect in the correct page

* fix language select to work with iso-1 or iso-3 or plain language name

* fix the summary page max width to 145px

* fix edit submission metadata link to target top

* make clicking in the ontology browse  fair score details link redirect to  summary page fairness block

* use bootsnap to boot the app environment faster

* reset agents input values to fetch there values if edit metadata on error state

* fix agent search input style

* handle case agent affiliations is nil in summary page

* in new ontology form auto select the first status possible

* fix ontology form visiblity in private not showing additional information

* disable turbo in the ontology browser card link

* Fix: update ontology summary and edit pages code to adapt the change in the backend metadata  (#375)

* add "cancel" button to the submission edit form

* fix homepage analytics to use all the analytics not only the last_month

* handle the change of metadata categories re-naming

* Fix: Modify the display of certain texts on home page(#357)

* Modify the display of certain texts on home page

* Change css of buttons

* add upload white icon

* add function to render formatted number

* change content text in search

* Add tooltip info to Fair score and change the dispaly of figures

* Delete added icon and fix bug in see details

* fix home page main button hover style

* use localized values in the home page

---------

Co-authored-by: Syphax bouazzouni <[email protected]>

* Fix: changes in browse page texts (#363)

* Add admin default alert

* add style to alert component

* Change display text and format button

* change display : see more and see less

* Add box-shadow to certain elements

* Change text in search box

* make the box-shadow of the browse page lighter

* make the upload button in the browse page take all the width

* use the same browser page upload button component in the home page

* Change the display of alert component

* change the capitalized letter

* revert the addition of an argument in the alert component

* make the alert message in the browse page take only 70% of the width

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>

* Fix: Update my account page texts (#353)

* Update my account page

* Fix display text github

* use $REST_URL instead portal_name in the api documentation link in the account page

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>

* Fix: changes summary page texts (#364)

* Update the display of texts and values

* add custom labels to the properties_hash_values helper

* change the display and the style of texts

* Change the order and the text in section dates

* add tooltip info to fair score

* add infotooltip to submissions section

* update info text in submissions

* fix language display to be aligned in the center

* pass directly the attr_metadata arguement  SubmissionMetadataInput object in the attr_label helper

* Change the display of text in general information

* make the custom labels for metadata attributes work again

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>

* Fix: changes in upload submission texts(#360)

* Change content text

* Add target to component

* fix new submission form help text, to be only in two lines

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>

* Fix: changes in edit submission page texts (#378)

* Add style to SwitchInputComponent

* Change the display of some texts

* change the display of titles in dates section

* change the text of input label

* add again the default_empty_row: true option to contact_input helper

* remove the submission edit page dates hard coded label , will fixed in the backend

* fix switch component to use a custom header with a custom style

* fix generation of boolean metadata attribute with enforce values

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>

* Feature: Add UI tests infrastructure and Github action  (#377)

* add test CI

* add ontologies controller tests

* Fix: global issue with the 2023 Q2 release (#380)

* make the recomender and annotator  text bigger and have a place holder

* update fair score label from N/A score to Not yet supported

* remove organization name from the widgets tab title

* extract the metadata help link to the settings file

* remove notes tabs title

* remove the subscribe button to the notes tab

* add space to instance details title before the two points

* fix the display of concepts if skos and classes if owl

* add UM logo for support logos in home page

* fix support images width in the home page

* Feature: Add social icons to the footer (#379)

* add api icon footer

* add email icon footer

* add sparql icon footer

* add new  footer icons

---------

Co-authored-by: Syphax Bouazzouni <[email protected]>

* Fix: Changes in home page and new submission page (#381)

* Add icons to fair score (json and api)

* change format to Representation language

* change twitter news by news

* add ontoportal logo

* fix bug of switching tabs on the summary page

* Add style to ontoportal logo

* Add min, max, average to fair score

* Change the color of icons in login page

* Change the style of "raw data"

* change the style of raw data to primary color

* Change the site name displayed in the browser

* Delete to black line in upload mappings button

* change the color of score buttons

* Give all logos the same width and height

* Add fairness_link to use json icon

* Change the width of twitter and fair score box

* change organisation to site in the locale files

* adjust the json icon

* Feature: Remove handlebars dependency and update ontology properties tab to use plain HTML (#346)

* remove handlebars dependecy

* add tab_properties route and file to use the ConceptDetailsComponent

* add conditions to adapt ConceptDetailsComponent

* Migrate properties file

* Fix bug in url

* Add the deleted %div

* Creation of new PropertiesController and View

* Remove all handlebars

* Fix bug when  an ID contains "#" so that the data can be displayed

* transform properties jquery code to turbo and stimilus js

* optimize the ontologies properties action to not fetch all properties

---------

Co-authored-by: Syphax bouazzouni <[email protected]>

* Fix: portal errors notifications (#385)

* Remove the dead code and update error function

* add internal_server_error function

* add the letter opener config to test emails in local

* add the unit test of notifier controller

* Add error view to make the backtrace readable

* put the letter opener in the development mode

* Show the Current user or the request IP

* Feature: add local api tests  CI (#384)

* remove old file and config no more used

* add bash scripts to run and stop an ontoportal api using docker images

* add test UI against a remote api CI

* add a docker build CI with a new Dockerfile

* add running  UI test against a local API CI

* add bash script to run ontoportal web ui in dev mode or run tests

* update docker compose file to not build locally and use the publisher image

* update ontoportal script to add help and rewrite it using functions

* allow hosts in development environment

* make testportal and ontoportal have the same theme

* update ontoportal script to add reset-cache option

* update bioportal config sample to include ui_theme and homepage & footer configs

* add a mysql healthcheck to the docker compose

* fix linkfield component using a no more existent config variable

* add current url in portals errors notification (#387)

* Feature: add integration tests & Ontology process information alert (#386)

* show ontology groups in the ontology summary page

* updatr account page to show empty state  of Subscriptions,  Submitted and projects

* don't stop the API server after running the tests

* add chrome-server service to run integration test

* add users creation & login  flow tests

* add submission creation system tests

* add system tests CI

* fix development environnement not raising exception

* if submission status icon helper with the correct conditions

* not show the ontology data section if the submission is not ready

* add an alert message in summary page, to give information about this submission statueses

* add remote api of Stageportal tests CI

* add option to the ontoportal script to run test with a remote API

* fix ontologies with no submissions summary page state

* build docker images in github hub  in addition of docker

* add test coverage report

* fix ontology viewer sections order

* Feature: add user agent  usages code and UI (#365)

* add user agent  usage code and UI

* add update agents usages action and UI

* fix agent search input style

* show agent attributes metadata in usages form

* fix concepts labels for SKOS and Ontologies

* fix submission edit error state not showing agents values

* hide in the agents form the organization fields if not selected

* remove the enforced capitalization of agent name display

* fix agents usages update with new select input interface

* disable the agent delete button if the agent is used

* fix the display of definitions and parent (#389)

Co-authored-by: Syphax Bouazzouni <[email protected]>

* Fix: summary page missing properties and fix the edit of copyRightHolder agent  (#390)

* show ontology groups in the ontology summary page

* updatr account page to show empty state  of Subscriptions,  Submitted and projects

* don't stop the API server after running the tests

* add chrome-server service to run integration test

* add users creation & login  flow tests

* add submission creation system tests

* add system tests CI

* fix development environnement not raising exception

* if submission status icon helper with the correct conditions

* not show the ontology data section if the submission is not ready

* add an alert message in summary page, to give information about this submission statueses

* add remote api of Stageportal tests CI

* add option to the ontoportal script to run test with a remote API

* fix ontologies with no submissions summary page state

* build docker images in github hub  in addition of docker

* add test coverage report

* fix ontology viewer sections order

* fix  summary icons, by  adding publication, title and enforce disabled

* add admin block helper

* add to the ontology viewer private, hasLanguage and  retired badges

* add a title to the json and subscribe button to give their usages

* fix summary usage and methodology properties not showing

* add :award to summary page "usage" block

* add :exampleIdentifier to the summary identifiers block

* add ::associatedMedia, :bugDatabase, :mailingList, :uriRegexPattern to summary links block

* add :toDoList and :notes to summary  methodology block

* add a an admin block in the summary page for the configuration metadata

* lazy load the ontology view section in development mode for better perf

* add the abstract to ontology summary description block

* update the summary page description text to integrate multiple metadata

 alternative, hasLicense, prefix, namespace, metadataVoc

* add ontology edit metadata tests

* fix browse not working in local french

* remove reset button in submission forms

* fix metrics evolution popup title

* add in summary page  show all metrics popup

* don't humanize agent name and show them as saved

* fix the new hasOntologyLanguage badge for the one that are nil

* fix landscape average metrics all NaN

* fix metadata curator returning content missing

* fix subscribe button unwatch state title

* hide topnav "Recently Viewed" if empty

* fix user edit form button style

* add useGuidelines and copyrightHolder to the ontology licenses popup

* add submission hasDomain  to the summary general…
  • Loading branch information
7 people authored Dec 10, 2023
1 parent ba6ee8d commit 1736a19
Show file tree
Hide file tree
Showing 244 changed files with 10,084 additions and 5,069 deletions.
158 changes: 32 additions & 126 deletions .env.sample
Original file line number Diff line number Diff line change
@@ -1,137 +1,43 @@
# Default values are optimized for production to avoid having to configure
# much in production.
#
# However it should be easy to get going in development too. If you see an
# uncommented option that means it's either mandatory to set or it's being
# overwritten in development to make your life easier.
##################### UI configuration ####################
RAILS_ENV=development
SITE=Testportal
ORG=LIRMM
ORG_URL=http://www.lirmm.fr

# Enable BuildKit by default:
# https://docs.docker.com/develop/develop-images/build_enhancements
export DOCKER_BUILDKIT=1
UI_URL=http://localhost:3000
API_URL=http://localhost:9393
API_KEY=

# Rather than use the directory name, let's control the name of the project.
export COMPOSE_PROJECT_NAME=ontoportal-docker
UI_THEME=ontoportal

# In development we want all services to start but in production you don't
# need the asset watchers to run since assets get built into the image.
#
# You can even choose not to run postgres and redis in prod if you plan to use
# managed cloud services. Everything "just works", even optional depends_on!
#export COMPOSE_PROFILES=postgres,redis,web,worker,cable
export COMPOSE_PROFILES=db,cache,assets,web
BIOMIXER_URL=
BIOMIXER_APIKEY=

# If you're running native Linux and your uid:gid isn't 1000:1000 you can set
# these to match your values before you build your image. You can check what
# your uid:gid is by running `id` from your terminal.
#export UID=1000
#export GID=1000
ANNOTATOR_URL=

# You can generate a more secure secret by running: ./run rails secret
export SECRET_KEY_BASE=insecure_key_for_dev
FAIRNESS_DISABLED=false
FAIRNESS_URL=

# Which environment is running? These should be "development" or "production".
#export RAILS_ENV=production
#export NODE_ENV=production
export RAILS_ENV=development
export NODE_ENV=development
NCBO_ANNOTATORPLUS_ENABLED=false
NCBO_ANNOTATOR_URL=
NCBO_API_KEY=

# The bind port for puma.
#
# Be warned that if you change this value you'll need to change 8000 in both
# your Dockerfile and in a few spots in docker-compose.yml due to the nature of
# how this value can be set (Docker Compose doesn't support nested ENV vars).
#export PORT=8000
SUPPORT_EMAIL=[email protected]
RELEASE_VERSION="OntoPortal Appliance 3.0.1"

# How many workers and threads should your app use? WEB_CONCURRENCY defaults
# to the server's CPU count * 2. That is a good starting point. In development
# it's a good idea to use 1 to avoid race conditions when debugging.
#export WEB_CONCURRENCY=
#export RAILS_MAX_THREADS=5
#export WEB_CONCURRENCY=1
#export RAILS_MAX_THREADS=1
ANALYTICS_ID=
USE_RECAPTCHA=false
#################### Buidling the API for running tests ####################
## An ontology that will be imported in the starting of the API server
STARTER_ONTOLOGY=STY
## API key of a remote API used to download the starter ontology
OP_API_KEY=8b5b7825-538d-40e0-9e9e-5ab9274a9aeb
## API url of the remote API used to download the starter ontology
OP_API_URL="https://data.bioontology.org"

# You'll always want to set POSTGRES_USER and POSTGRES_PASSWORD since the
# postgres Docker image uses them for its default database user and password.
export POSTGRES_USER=hello
export POSTGRES_PASSWORD=password
#export POSTGRES_DB=hello
#export POSTGRES_HOST=postgres
#export POSTGRES_PORT=5432
## Image repositroy from which the ontoportal api will be built
API_IMAGE_REPOSITORY=agroportal
## Image tag/version from which the ontoportal api will be built
API_IMAGE_TAG=development

# What's your full Redis connection URL? This will be used for caching, Sidekiq,
# and Action Cable. You can always split them up later.
#export REDIS_URL=redis://redis:6379/1

# The bind port for puma but for Action Cable.
#
# Be warned that if you change this value you'll need to change 28080 in a few
# spots in docker-compose.yml due to the nature of how this value can be set
# (Docker Compose doesn't support nested ENV vars).
#export CABLE_PORT=28080

# The Action Cable address that will be accessible over HTTP. In production
# you would typically have this reverse proxied to a sub-domain with nginx, in
# which case you would set something like: ws://cable.example.com
#
# This is one case where it defaults to a development value because it's not
# possible for me to know what domain name you'll be using.
#export ACTION_CABLE_FRONTEND_URL=ws://localhost:28080

# Comma separated list of RegExp origins to allow connections from for Action
# Cable. The values will be converted into a proper RegExp, so omit the / /.
#
# Examples:
# http:\/\/localhost*
# http:\/\/example.*,https:\/\/example.*
#export ACTION_CABLE_ALLOWED_REQUEST_ORIGINS=http:\/\/localhost*

# If this is set then Rails will serve files from public/ in production. You
# probably don't want this behavior unless you're testing prod mode locally,
# because nginx would typically serve static files.
#export RAILS_SERVE_STATIC_FILES=

# Should Docker restart your containers if they go down in unexpected ways?
#export DOCKER_RESTART_POLICY=unless-stopped
export DOCKER_RESTART_POLICY=no

# What health check test command do you want to run? In development, having it
# curl your web server will result in a lot of log spam, so setting it to
# /bin/true is an easy way to make the health check do basically nothing.
#export DOCKER_WEB_HEALTHCHECK_TEST=curl localhost:8000/up
export DOCKER_WEB_HEALTHCHECK_TEST=/bin/true

# What ip:port should be published back to the Docker host for the app server?
# If you're using Docker Toolbox or a custom VM you can't use 127.0.0.1. This
# is being overwritten in dev to be compatible with more dev environments.
#
# If you have a port conflict because something else is using 8000 then you
# can either stop that process or change 8000 to be something else.
#
# Use the default in production to avoid having puma directly accessible to
# the internet since it'll very likely be behind nginx or a load balancer.
#export DOCKER_WEB_PORT_FORWARD=127.0.0.1:8000
export DOCKER_WEB_PORT_FORWARD=127.0.0.1:3000

# This is the same as above except for Action Cable.
#export DOCKER_CABLE_PORT_FORWARD=127.0.0.1:28080
export DOCKER_CABLE_PORT_FORWARD=28080

# What volume path should be used? In dev we want to volume mount everything
# so that we can develop our code without rebuilding our Docker images.
#export DOCKER_WEB_VOLUME=./public:/app/public


export DOCKER_WEB_VOLUME=.:/app

# What CPU and memory constraints will be added to your services? When left at
# 0 they will happily use as much as needed.
# export DOCKER_POSTGRES_CPUS=0
# export DOCKER_POSTGRES_MEMORY=0
# export DOCKER_REDIS_CPUS=0
# export DOCKER_REDIS_MEMORY=0
# export DOCKER_WEB_CPUS=0
# export DOCKER_WEB_MEMORY=0
# export DOCKER_WORKER_CPUS=0
# export DOCKER_WORKER_MEMORY=0
# export DOCKER_CABLE_CPUS=0
# export DOCKER_CABLE_MEMORY=0
56 changes: 56 additions & 0 deletions .github/workflows/docker-image-arm.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: Docker branch Images build - ARM version

on:
push:
branches:
- development
- stage
- test
release:
types: [ published ]
jobs:
push_to_registry:
name: Push Docker branch image to Docker Hub
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v3

- name: Set up QEMU
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Log in to Docker Hub
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v4
with:
images: |
agroportal/ontoportal_web_ui-arm
ghcr.io/${{ github.repository }}-arm
- name: Build and push Docker image
uses: docker/build-push-action@v4
with:
context: .
platforms: linux/arm64
build-args: |
RUBY_VERSION=2.7.8
push: true
tags: ${{ steps.meta.outputs.tags }}-${{ env.BRANCH_NAME }}-arm64
labels: ${{ steps.meta.outputs.labels }}

55 changes: 55 additions & 0 deletions .github/workflows/docker-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
name: Docker branch Images build

on:
push:
branches:
- development
- stage
- test
release:
types: [ published ]
jobs:
push_to_registry:
name: Push Docker branch image to Docker Hub
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v3

- name: Set up QEMU
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Log in to Docker Hub
uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v4
with:
images: |
agroportal/ontoportal_web_ui
ghcr.io/${{ github.repository }}
- name: Build and push Docker image
uses: docker/build-push-action@v4
with:
context: .
platforms: linux/amd64
build-args: |
RUBY_VERSION=2.7.8
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
52 changes: 52 additions & 0 deletions .github/workflows/tests-real-data-stageportal.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
name: "Run remote API (stageportal) tests CI"

on:
push:
pull_request:
types: [ opened, reopened ]
env:
API_URL: https://data.stageportal.lirmm.fr/ # or ${{ secrets.API_URL }}
API_KEY: 1de0a270-29c5-4dda-b043-7c3580628cd5 # public apikey or ${{ secrets.API_KEY }}
BIOMIXER_URL: ${{ secrets.BIOMIXER_URL }}
FAIRNESS_URL: ${{ secrets.FAIRNESS_URL }}
ANNOTATOR_URL: ${{ secrets.ANNOTATOR_URL }}
DB_HOST: 127.0.0.1
jobs:
test:
runs-on: ubuntu-latest
services:
mysql:
image: mysql:8.0
ports:
- "3306:3306"
env:
MYSQL_ROOT_PASSWORD: root
memcached:
image: memcached:1.6
ports:
- 11211:11211
steps:
- name: Checkout code
uses: actions/checkout@v3
# Add or replace dependency steps here
- name: Install Ruby and gems
uses: ruby/setup-ruby@v1
with:
ruby-version: 2.7.8
bundler-cache: true
# Add or replace database setup steps here
- name: set up config file
run: cp config/database.yml.sample config/database.yml
- name: Set up database schema
run: RAILS_ENV=test bin/rails db:setup
- name: Set up yarn
run: yarn install
# Add or replace test runners here
- name: Run tests
run: RAILS_ENV=test bin/rails test test/controllers/* -v
52 changes: 52 additions & 0 deletions .github/workflows/tests-real-data-testportal.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
name: "Run remote API (testportal) tests CI"

on:
push:
pull_request:
types: [ opened, reopened ]
env:
API_URL: https://data.testportal.lirmm.fr/ # or ${{ secrets.API_URL }}
API_KEY: 1de0a270-29c5-4dda-b043-7c3580628cd5 # public apikey or ${{ secrets.API_KEY }}
BIOMIXER_URL: ${{ secrets.BIOMIXER_URL }}
FAIRNESS_URL: ${{ secrets.FAIRNESS_URL }}
ANNOTATOR_URL: ${{ secrets.ANNOTATOR_URL }}
DB_HOST: 127.0.0.1
jobs:
test:
runs-on: ubuntu-latest
services:
mysql:
image: mysql:8.0
ports:
- "3306:3306"
env:
MYSQL_ROOT_PASSWORD: root
memcached:
image: memcached:1.6
ports:
- 11211:11211
steps:
- name: Checkout code
uses: actions/checkout@v3
# Add or replace dependency steps here
- name: Install Ruby and gems
uses: ruby/setup-ruby@v1
with:
ruby-version: 2.7.8
bundler-cache: true
# Add or replace database setup steps here
- name: set up config file
run: cp config/database.yml.sample config/database.yml
- name: Set up database schema
run: RAILS_ENV=test bin/rails db:setup
- name: Set up yarn
run: yarn install
# Add or replace test runners here
- name: Run tests
run: RAILS_ENV=test bin/rails test test/controllers/* -v
Loading

0 comments on commit 1736a19

Please sign in to comment.