Skip to content

Commit

Permalink
Merge branch 'master' into 2700-syntax-error-checking
Browse files Browse the repository at this point in the history
  • Loading branch information
johrstrom committed Aug 22, 2024
2 parents fb4bc62 + 4b09edb commit 133ba3c
Show file tree
Hide file tree
Showing 627 changed files with 4,656 additions and 2,685 deletions.
11 changes: 4 additions & 7 deletions .github/workflows/document-merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,13 @@ jobs:
create-doc-issue:
runs-on: ubuntu-latest
if: github.event.pull_request.merged == true
env:
PR_NUM: ${{ github.event.pull_request.number }}
TITLE: ${{ github.event.pull_request.title }}
steps:
- name: Create an issue on the documentation repository
if: contains(github.event.pull_request.labels.*.name, 'needs doc')
run: |
PR_NUM=${{ github.event.pull_request.number }}
TITLE="${{ github.event.pull_request.title }}"
BODY="{
\"title\": \"$TITLE\",
\"body\": \"Create documentation for https://github.com/OSC/ondemand/pull/$PR_NUM\"
Expand All @@ -34,8 +35,6 @@ jobs:
- name: Create an issue on the puppet repository
if: contains(github.event.pull_request.labels.*.name, 'needs automation')
run: |
PR_NUM=${{ github.event.pull_request.number }}
TITLE="${{ github.event.pull_request.title }}"
BODY="{
\"title\": \"$TITLE\",
\"body\": \"Create automation for https://github.com/OSC/ondemand/pull/$PR_NUM\"
Expand All @@ -50,8 +49,6 @@ jobs:
- name: Create an issue on the ansible repository
if: contains(github.event.pull_request.labels.*.name, 'needs automation')
run: |
PR_NUM=${{ github.event.pull_request.number }}
TITLE="${{ github.event.pull_request.title }}"
BODY="{
\"title\": \"$TITLE\",
\"body\": \"Create automation for https://github.com/OSC/ondemand/pull/$PR_NUM\"
Expand All @@ -61,4 +58,4 @@ jobs:
--url https://api.github.com/repos/OSC/ood-ansible/issues \
--header 'Authorization: token ${{ secrets.OSC_ROBOT_GH_PUB_REPO_TOKEN }}' \
--header 'content-type: application/json' \
--data "$BODY"
--data "$BODY"
6 changes: 3 additions & 3 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
- os: ubuntu-latest
ruby: "3.1.2"
bundler: "2.3.7"
# Test versions from Amazon Linux 2023
# Test versions from Amazon Linux 2023 and Ubuntu 24.04
- os: ubuntu-latest
ruby: "3.2.2"
bundler: "2.4.10"
Expand Down Expand Up @@ -99,8 +99,7 @@ jobs:
- name: Get ondemand token
id: token
run: |
TOKEN_NAME=$(kubectl describe serviceaccount ondemand -n ondemand | grep Tokens | awk '{ print $2 }')
TOKEN=$(kubectl describe secret $TOKEN_NAME -n ondemand | grep "token:" | awk '{ print $2 }')
TOKEN=$(kubectl create token ondemand --namespace=ondemand)
echo "ondemand=${TOKEN}" >> $GITHUB_OUTPUT
- name: Setup kubectl
run: |
Expand All @@ -122,6 +121,7 @@ jobs:
- amzn2023
- ubuntu-20.04
- ubuntu-22.04
- ubuntu-24.04
- debian-12
arch:
- x86_64
Expand Down
10 changes: 8 additions & 2 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,13 @@ build-nightly:
# Ubuntu doesn't have way to get NodeJS 14+ on ppc64le
- OOD_PACKAGING_DIST: [ubuntu-20.04, ubuntu-22.04]
OOD_PACKAGING_ARCH: [x86_64, aarch64]
# Ubuntu 24.04 on aarch64 is slow and will time out
- OOD_PACKAGING_DIST: [ubuntu-24.04]
OOD_PACKAGING_ARCH: [x86_64, ppc64le]
# Amazon 2023 on aarch64 is slow and will time out
- OOD_PACKAGING_DIST: [amzn2023]
OOD_PACKAGING_ARCH: [x86_64]
timeout: 3h
timeout: 4h
artifacts:
paths:
- dist
Expand All @@ -59,10 +62,13 @@ build:
# Ubuntu doesn't have way to get NodeJS 14+ on ppc64le
- OOD_PACKAGING_DIST: [ubuntu-20.04, ubuntu-22.04]
OOD_PACKAGING_ARCH: [x86_64, aarch64]
# Ubuntu 24.04 on aarch64 is slow and will time out
- OOD_PACKAGING_DIST: [ubuntu-24.04]
OOD_PACKAGING_ARCH: [x86_64, ppc64le]
# Amazon 2023 on aarch64 is slow and will time out
- OOD_PACKAGING_DIST: [amzn2023]
OOD_PACKAGING_ARCH: [x86_64]
timeout: 3h
timeout: 4h
artifacts:
paths:
- dist
Expand Down
91 changes: 91 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,109 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
## [Unreleased]

### Added
- BatchConnect form labels can now be made dynamic with data-label-* in [3498](https://github.com/OSC/ondemand/pull/3498).
- BatchConnect form auto_modules directive can now filter by string or regex in [3574](https://github.com/OSC/ondemand/pull/3574).
- Saved settings widget in [#3545](https://github.com/OSC/ondemand/pull/3545).
- BatchConnect cards can now edit and relaunch the session in [3358](https://github.com/OSC/ondemand/pull/3358).
- NoVNC compression & quality have configurable defaults in [3380](https://github.com/OSC/ondemand/pull/3380).
- Added `bc_sessions_poll_delay` in favor of hidden environment variable POLL_DELAY in [3421](https://github.com/OSC/ondemand/pull/3421).
- BatchConnect applications now write out `completed_at` attributes in [3424](https://github.com/OSC/ondemand/pull/3424).
- Added module support for custom javascript files in [3499](https://github.com/OSC/ondemand/pull/3499).
- Added the turbo-rails gem and refactored BatchConnect::Sessions#index to use it in [3509](https://github.com/OSC/ondemand/pull/3509).
- Added support to edit saved settings from the details view in [3498](https://github.com/OSC/ondemand/pull/3498).
- The project manager can now define default launcher fields in [3488](https://github.com/OSC/ondemand/pull/3488).
- The feature to show the project size is now configurable in [3531](https://github.com/OSC/ondemand/pull/3531).
- The dashboard now has a system status page in [3549](https://github.com/OSC/ondemand/pull/3549).
- Support for Ubuntu 24.04 in [3676](https://github.com/OSC/ondemand/pull/3676).
- Added configurable default number of apps to show in the apps table in [3672](https://github.com/OSC/ondemand/pull/3672).

### Changed
- Script models have been renamed to Launcher in [3397](https://github.com/OSC/ondemand/pull/3397).
- The dashboard has been upgraded to rails 7.0 in [3353](https://github.com/OSC/ondemand/pull/3353).
- Myjobs has been upgraded to rails 7.0 in [3404](https://github.com/OSC/ondemand/pull/3404).
- ActionController::Live has been re-enabled in the file app in [3441](https://github.com/OSC/ondemand/pull/3441).
- use relative OIDCRedirectURI in [3448](https://github.com/OSC/ondemand/pull/3448).
- Removes NavConfig class & Replaces its use [3475](https://github.com/OSC/ondemand/pull/3475).
- nginx_stage now uses ps to count sessions instead of lsof in [3511](https://github.com/OSC/ondemand/pull/3511).
- The http to https redirect host is now configurable in [3515](https://github.com/OSC/ondemand/pull/3515).
- Passenger and NGINX have been updated 6.0.20 and 1.24.0 respectively in [3535](https://github.com/OSC/ondemand/pull/3535).
- The dashboard now uses Bootstrap 5 in [3541](https://github.com/OSC/ondemand/pull/3541).
- The file editor now uses the default layout in [3646](https://github.com/OSC/ondemand/pull/3646).
- Announcemnts are now dismissible with the option to make them required in [3667](https://github.com/OSC/ondemand/pull/3667).
- Ace is now a yarn dependency in [3629](https://github.com/OSC/ondemand/pull/3629).
- Pages now expect a string instead of a URI for icons in [3682](https://github.com/OSC/ondemand/pull/3682).
- MOTD format markdown_erb will also sanitize html and respond to the motd_render_html configuration
in [3675](https://github.com/OSC/ondemand/pull/3675).
- The files api no longer reponds with human_sizs. Instead this is converted to human sizes in
javascript on the client in [3723](https://github.com/OSC/ondemand/pull/3723).
- XDMoD jobs panel uses plain js now in [3706](https://github.com/OSC/ondemand/pull/3706).
- Esbuild now has a plugin for to use source code for minified dependencies in [3693](https://github.com/OSC/ondemand/pull/3693).

### Fixed
- Ensure that the asset directory is clean when building in [3356](https://github.com/OSC/ondemand/pull/3356).
- The path_selector can now inheret configurations in [3375](https://github.com/OSC/ondemand/pull/3375).
- The files app no longer searches over the actions column [3443](https://github.com/OSC/ondemand/pull/3443).
- data-hide correctly hides the path_selector's button in [3460](https://github.com/OSC/ondemand/pull/3460).
- Dynamic bc now supports fields with numbers in them in [3507](https://github.com/OSC/ondemand/pull/3507).
- File and shell buttons will no longer appear when apps are unavailable in [3655](https://github.com/OSC/ondemand/pull/3655).
- Downloads can once again be estimated in [3653](https://github.com/OSC/ondemand/pull/3653).
- Download buttons will now be hidden for certain files like pipes in [3654](https://github.com/OSC/ondemand/pull/3654).
- Favorite file paths now consult the Allowlist in [3526](https://github.com/OSC/ondemand/pull/3526).

### Security

- Jobs will now be submitted after sanitizing the envionment in
[3627](https://github.com/OSC/ondemand/pull/3627). This prevents
the leaking of sensitive environment variables to the job when `copy_environment`
is used.

## [3.1.7] - 06-25-2024

### Security

- Jobs will now be submitted after sanitizing the envionment in
[3628](https://github.com/OSC/ondemand/pull/3628). This prevents
the leaking of sensitive environment variables to the job when `copy_environment`
is used.

### Fixed
- OIDCRedirectURI is always relative in [3548](https://github.com/OSC/ondemand/pull/3548).
- Dynamic batch connect applications now accept fields with numbers in them in [3548](https://github.com/OSC/ondemand/pull/3548).
- The dashboard no longer sets logo image width to 100% in
[3632](https://github.com/OSC/ondemand/pull/3632).

### Changed
- `nginx` has been updated to `1.24.0` from `1.22.1` in
[3548](https://github.com/OSC/ondemand/pull/3548).
- `passenger` has been updated to `6.0.20` from `6.0.17` in
[3548](https://github.com/OSC/ondemand/pull/3548).

### Added

- `ood_portal.yml` now has the configuration `http_redirect_host` to specify
the host to redirect to when upgrading from http to https in
[3548](https://github.com/OSC/ondemand/pull/3548).

## [3.1.4] - 04-01-2024

### Fixed
- The path_selector now responds to labels and can be hidden in in [3467](https://github.com/OSC/ondemand/pull/3467).
- Pinned app icons are now centered correctly in [3374](https://github.com/OSC/ondemand/pull/3374).

### Added
- ood_core now sends heartbeats to noVNC connections to keep them alive in [3467](https://github.com/OSC/ondemand/pull/3467).
- Batch connect jobs now serialize `completed_at` attributes in [3467](https://github.com/OSC/ondemand/pull/3467).

### Security
- The files app now uses ActionController::Live to support streaming large files in [3467](https://github.com/OSC/ondemand/pull/3467)
preventing out of memory exceptions.
- The regular expression for mime types has been updated in [3482](https://github.com/OSC/ondemand/pull/3482).

## [3.1.1] - 02-12-2024

### Fixed

- Host field in the cards are only rendered when the job is running in [3365](https://github.com/OSC/ondemand/pull/3365).

## [3.1.0] - 02-08-2024

Expand Down Expand Up @@ -1322,6 +1410,9 @@ Similar changelog as [3.0.0]. This version was not released to the general publi
- From 1.3.7 - 1.4.2 updated app versions

[Unreleased]: https://github.com/OSC/ondemand/compare/v3.1.0...HEAD
[3.1.7]: https://github.com/OSC/ondemand/compare/v3.1.4...v3.1.7
[3.1.4]: https://github.com/OSC/ondemand/compare/v3.1.1...v3.1.4
[3.1.1]: https://github.com/OSC/ondemand/compare/v3.1.0...v3.1.1
[3.1.0]: https://github.com/OSC/ondemand/compare/v3.0.3...v3.1.0
[3.0.3]: https://github.com/OSC/ondemand/compare/v3.0.2...v3.0.3
[3.0.2]: https://github.com/OSC/ondemand/compare/v3.0.1...v3.0.2
Expand Down
2 changes: 1 addition & 1 deletion DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ First, you'll need to clone this repository and make a symlink.

```text
mkdir -p ~/ondemand/dev
git clone https://github.com/OSC/ondemand.git ~/ondemand/src
git clone git@github.com:OSC/ondemand.git ~/ondemand/src
cd ~/ondemand/dev
ln -s ../src/apps/dashboard
```
Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ gem 'rake'
gem 'dotenv', '~> 2.1'

group :package do
gem 'ood_packaging', '~> 0.14.0'
gem 'ood_packaging', '~> 0.15.1'
end

group :test do
Expand Down
8 changes: 5 additions & 3 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ GEM
oga (3.3)
ast
ruby-ll (~> 2.1)
ood_packaging (0.14.0)
ood_packaging (0.15.1)
rake (~> 13.0.1)
open_uri_redirections (0.2.1)
parallel (1.21.0)
Expand All @@ -106,7 +106,8 @@ GEM
rake (13.0.6)
regexp_parser (2.1.1)
require_all (3.0.0)
rexml (3.2.5)
rexml (3.3.3)
strscan
rspec (3.10.0)
rspec-core (~> 3.10.0)
rspec-expectations (~> 3.10.0)
Expand Down Expand Up @@ -159,6 +160,7 @@ GEM
net-telnet (= 0.1.1)
sfl
stringify-hash (0.0.2)
strscan (3.1.0)
thor (1.2.1)
unicode-display_width (2.1.0)
vmfloaty (1.5.0)
Expand All @@ -177,7 +179,7 @@ DEPENDENCIES
beaker-docker (~> 1.4.0)
beaker-rspec
dotenv (~> 2.1)
ood_packaging (~> 0.14.0)
ood_packaging (~> 0.15.1)
rake
rspec
rubocop
Expand Down
24 changes: 15 additions & 9 deletions apps/dashboard/Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -21,55 +21,61 @@ gem 'sdoc', group: :doc, require: false
group :development, :test do
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug'
gem 'climate_control', '~> 0.2'
gem 'pry'
gem 'timecop', '~> 0.9'
end

group :test do
gem "capybara"
# FIXME: capybara locked due to ruby 2.7 support.
gem 'capybara', '~> 3.39', '< 3.40'

# lock selenium as it doesn't work on ubuntu 22.04
# https://github.com/SeleniumHQ/selenium/issues/11291
gem "selenium-webdriver", '4.5.0'
gem "webrick"
gem 'mocha', '~> 2.1'
end

group :development do
# Access an IRB console on exception pages or by using <%= console %> in views
# gem 'web-console', '~> 2.0'
end

# lock nokogiri & net-imap to versions that are compatible with ruby 2.7.0
# Ubuntu 20.04 uses.
# lock gems to versions that are compatible with ruby 2.7.0,
# which Ubuntu 20.04 uses.
gem 'nokogiri', '~> 1.15', '< 1.16'
gem 'net-imap', '~> 0.3', '< 0.4'
gem 'public_suffix', '~> 5.0', '< 6.0'

# Extra third-party gems
gem 'dotenv-rails', '~> 2.1'
gem 'redcarpet', '~> 3.3'
gem 'browser', '~> 2.2'
gem 'addressable', '~> 2.4'
gem 'bootstrap_form', '~> 4.0'
gem 'mocha', '~> 2.1', group: :test
gem 'bootstrap_form', '5.0'
gem 'autoprefixer-rails', '~> 10.2.5'
gem 'dotiw'
gem 'local_time', '~> 1.0.3'
gem 'zip_kit', '~> 6.2'
gem 'rss', '~> 0.2'
gem 'climate_control', '~> 0.2'
gem 'rest-client', '~> 2.0'

gem 'jsbundling-rails', '~> 1.0'
gem 'cssbundling-rails', '~> 1.1'
gem 'turbo-rails', '~> 2.0'

# should upgrade to propshaft - only have an issue with fontawesome icons
gem 'sprockets-rails', '>= 2.0.0'

# OOD specific gems
gem 'ood_support', '~> 0.0.2'
gem 'ood_appkit', '~> 2.1.0'
gem 'ood_core', '~> 0.24.1'
gem 'pbs', '~> 2.2.1'
gem 'rest-client', '~> 2.0'
gem 'ood_core', '~> 0.24'

# gems to include in ondemand-gems repo for status apps to use
gem "sinatra", require: false
gem "sinatra-contrib", require: false
gem "erubi", require: false
gem "dalli", require: false

Loading

0 comments on commit 133ba3c

Please sign in to comment.