@@ -471,12 +471,15 @@ namespace :node do
471471 end
472472
473473 desc 'Release Node npm package'
474- task :release do |_task , arguments |
475- args = arguments . to_a . compact
476- nightly = args . delete ( 'nightly' )
477- Rake ::Task [ 'node:version' ] . invoke ( 'nightly' ) if nightly
474+ task :release , [ :nightly ] do |_task , arguments |
475+ nightly = arguments [ :nightly ]
476+ if nightly
477+ puts "Updating Node version to nightly..."
478+ Rake ::Task [ 'node:version' ] . invoke ( 'nightly' ) if nightly
479+ end
478480
479- Bazel . execute ( 'run' , [ '--config=release' ] , '//javascript/node/selenium-webdriver:selenium-webdriver.publish' )
481+ puts "Running Node package release..."
482+ Bazel . execute ( 'run' , [ '--config=release' ] , '//javascript/node/selenium-webdriver:selenium-webdriver.publish' )
480483 end
481484
482485 desc 'Release Node npm package'
@@ -535,12 +538,15 @@ namespace :py do
535538 end
536539
537540 desc 'Release Python wheel and sdist to pypi'
538- task :release do |_task , arguments |
539- args = arguments . to_a . compact
540- nightly = args . delete ( 'nightly' )
541- Rake ::Task [ 'py:version' ] . invoke ( 'nightly' ) if nightly
541+ task :release , [ :nightly ] do |_task , arguments |
542+ nightly = arguments [ :nightly ]
543+ if nightly
544+ puts "Updating Python version to nightly..."
545+ Rake ::Task [ 'py:version' ] . invoke ( 'nightly' )
546+ end
542547
543548 command = nightly ? '//py:selenium-release-nightly' : '//py:selenium-release'
549+ puts "Running Python release command: #{ command } "
544550 Bazel . execute ( 'run' , [ '--config=release' ] , command )
545551 end
546552
@@ -707,14 +713,17 @@ namespace :rb do
707713 end
708714
709715 desc 'Push Ruby gems to rubygems'
710- task :release do |_task , arguments |
711- args = arguments . to_a . compact
712- nightly = args . delete ( 'nightly' )
716+ task :release , [ :nightly ] do |_task , arguments |
717+ nightly = arguments [ :nightly ]
713718
714719 if nightly
720+ puts "Bumping Ruby nightly version..."
715721 Bazel . execute ( 'run' , [ ] , '//rb:selenium-webdriver-bump-nightly-version' )
722+
723+ puts "Releasing nightly WebDriver gem..."
716724 Bazel . execute ( 'run' , [ '--config=release' ] , '//rb:selenium-webdriver-release-nightly' )
717725 else
726+ puts "Releasing Ruby gems..."
718727 Bazel . execute ( 'run' , [ '--config=release' ] , '//rb:selenium-webdriver-release' )
719728 Bazel . execute ( 'run' , [ '--config=release' ] , '//rb:selenium-devtools-release' )
720729 end
@@ -785,17 +794,21 @@ namespace :dotnet do
785794 end
786795
787796 desc 'Upload nupkg files to Nuget'
788- task :release do |_task , arguments |
789- args = arguments . to_a . compact
790- nightly = args . delete ( 'nightly' )
791- Rake ::Task [ 'dotnet:version' ] . invoke ( 'nightly' ) if nightly
797+ task :release , [ :nightly ] do |_task , arguments |
798+ nightly = arguments [ :nightly ]
799+ if nightly
800+ puts "Updating .NET version to nightly..."
801+ Rake ::Task [ 'dotnet:version' ] . invoke ( 'nightly' )
802+ end
803+
804+ puts "Packaging .NET release artifacts..."
792805 Rake ::Task [ 'dotnet:package' ] . invoke ( '--config=release' )
793806
794807 api_key = ENV . fetch ( 'NUGET_API_KEY' , nil )
795808 push_destination = 'https://api.nuget.org/v3/index.json'
809+
796810 if nightly
797- # Nightly builds are pushed to GitHub NuGet repository
798- # This commands will run in GitHub Actions
811+ puts "Setting up NuGet GitHub source for nightly release..."
799812 api_key = ENV . fetch ( 'GITHUB_TOKEN' , nil )
800813 github_push_url = 'https://nuget.pkg.github.com/seleniumhq/index.json'
801814 push_destination = 'github'
@@ -804,6 +817,7 @@ namespace :dotnet do
804817 sh "dotnet nuget add source #{ flags . join ( ' ' ) } "
805818 end
806819
820+ puts "Pushing packages to NuGet"
807821 [ "./bazel-bin/dotnet/src/webdriver/Selenium.WebDriver.#{ dotnet_version } .nupkg" ,
808822 "./bazel-bin/dotnet/src/support/Selenium.Support.#{ dotnet_version } .nupkg" ] . each do |asset |
809823 sh "dotnet nuget push #{ asset } --api-key #{ api_key } --source #{ push_destination } "
@@ -899,9 +913,8 @@ namespace :java do
899913 end
900914
901915 desc 'Deploy all jars to Maven'
902- task :release do |_task , arguments |
903- args = arguments . to_a . compact
904- nightly = args . delete ( 'nightly' )
916+ task :release , [ :nightly ] do |_task , arguments |
917+ nightly = arguments [ :nightly ]
905918
906919 ENV [ 'MAVEN_USER' ] ||= ENV . fetch ( 'SEL_M2_USER' , nil )
907920 ENV [ 'MAVEN_PASSWORD' ] ||= ENV . fetch ( 'SEL_M2_PASS' , nil )
@@ -911,10 +924,16 @@ namespace :java do
911924 ENV [ 'MAVEN_REPO' ] = "https://oss.sonatype.org/#{ repo } "
912925 ENV [ 'GPG_SIGN' ] = ( !nightly ) . to_s
913926
914- Rake ::Task [ 'java:version' ] . invoke if nightly
927+ if nightly
928+ puts "Updating Java version to nightly..."
929+ Rake ::Task [ 'java:version' ] . invoke ( 'nightly' )
930+ end
931+
932+ puts "Packaging Java artifacts..."
915933 Rake ::Task [ 'java:package' ] . invoke ( '--config=release' )
916934 Rake ::Task [ 'java:build' ] . invoke ( '--config=release' )
917- # Because we want to `run` things, we can't use the `release` config
935+
936+ puts "Releasing Java artifacts to Maven repository at '#{ ENV [ 'MAVEN_REPO' ] } '"
918937 java_release_targets . each { |target | Bazel . execute ( 'run' , [ '--config=release' ] , target ) }
919938 end
920939
@@ -1068,34 +1087,20 @@ namespace :all do
10681087 end
10691088
10701089 desc 'Release all artifacts for all language bindings'
1071- task :release do |_task , arguments |
1090+ task :release , [ :nightly ] do |_task , arguments |
10721091 Rake ::Task [ 'clean' ] . invoke
10731092
1074- args = arguments . to_a . compact . empty? ? [ '--stamp' ] : arguments . to_a . compact
1075- Rake ::Task [ 'java:release' ] . invoke ( *args )
1076- Rake ::Task [ 'py:release' ] . invoke ( *args )
1077- Rake ::Task [ 'rb:release' ] . invoke ( *args )
1078- Rake ::Task [ 'dotnet:release' ] . invoke ( *args )
1079- Rake ::Task [ 'node:release' ] . invoke ( *args )
1080-
1081- # TODO: Update this so it happens in each language, but does not commit
1082- Rake ::Task [ 'all:version' ] . invoke ( 'nightly' )
1083-
1084- puts 'Committing nightly version updates'
1085- commit! ( 'update versions to nightly' , [ 'dotnet/selenium-dotnet-version.bzl' ,
1086- 'java/version.bzl' ,
1087- 'javascript/node/selenium-webdriver/BUILD.bazel' ,
1088- 'javascript/node/selenium-webdriver/package.json' ,
1089- 'py/docs/source/conf.py' ,
1090- 'py/selenium/webdriver/__init__.py' ,
1091- 'py/selenium/__init__.py' ,
1092- 'py/BUILD.bazel' ,
1093- 'rb/lib/selenium/webdriver/version.rb' ,
1094- 'rb/Gemfile.lock' ] )
1095-
1096- print 'Do you want to push the committed changes? (Y/n): '
1097- response = $stdin. gets . chomp . downcase
1098- @git . push if %w[ y yes ] . include? ( response )
1093+ nightly = arguments [ :nightly ]
1094+ Rake ::Task [ 'java:release' ] . invoke ( nightly )
1095+ Rake ::Task [ 'py:release' ] . invoke ( nightly )
1096+ Rake ::Task [ 'rb:release' ] . invoke ( nightly )
1097+ Rake ::Task [ 'dotnet:release' ] . invoke ( nightly )
1098+ Rake ::Task [ 'node:release' ] . invoke ( nightly )
1099+
1100+ unless nightly
1101+ puts 'bump all versions to nightly'
1102+ Rake ::Task [ 'all:version' ] . invoke ( 'nightly' )
1103+ end
10991104 end
11001105
11011106 task :lint do
0 commit comments