jenkins-bot has submitted this change. ( https://gerrit.wikimedia.org/r/c/pywikibot/core/+/742932 )
Change subject: [tests] remove TRAVIS settings ......................................................................
[tests] remove TRAVIS settings
Bug: T296371 Change-Id: Ibcb3b956840f0ea4647c1df46242c32f1655c606 --- D .travis.yml M tests/README.rst 2 files changed, 0 insertions(+), 239 deletions(-)
Approvals: Rubin: Looks good to me, but someone else must approve Xqt: Looks good to me, approved jenkins-bot: Verified
diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 5283c71..0000000 --- a/.travis.yml +++ /dev/null @@ -1,191 +0,0 @@ -# See tests/README.rst for instructions for using Travis with developer builds. - -language: python - -# Python 3.5 does not work on sponsored s390x arch -python: - - '3.6' - - '3.7' - - '3.8' - - '3.9' - - '3.10-dev' - -# OSX builds do not yet support Python -os: linux - -# Partner Queue Solution -arch: - - s390x - -dist: xenial # required for Python >= 3.7 - -addons: - apt: - packages: - - djvulibre-bin - -before_install: - # When PYSETUP_TEST_EXTRAS is not enabled, do not allow the - # default 'install' step to install all dependencies listed in - # requirements.txt to verify that a minimal install works as expected. - # Instead install requests in the before_script step below. - - if [[ "$PYSETUP_TEST_EXTRAS" != '1' ]]; then - printf "# Empty requirements with PYSETUP_TEST_EXTRA" > requirements.txt ; - fi - - # PYTEST is taken as the default - - if [[ "$PYSETUP_TEST_EXTRAS" != '1' ]]; then - export USE_PYTEST=1 ; - fi - - - if [[ "$PYWIKIBOT_SITE_ONLY" == "1" ]]; then - echo "Running site tests only code ${LANGUAGE} on family ${FAMILY}" ; - fi - - - export GITHUB_USER=`echo $TRAVIS_REPO_SLUG | cut -d '/' -f 1` - - mkdir ~/.python-eggs - - chmod 700 ~/.python-eggs - - - if [[ "$GITHUB_USER" != "wikimedia" ]]; then - export PYWIKIBOT_TEST_WRITE_FAIL=1 ; - fi - -install: - - pip install -U setuptools - - pip install -r dev-requirements.txt - - pip install -r requirements.txt - - pip install mwparserfromhell - -before_script: - - if [[ "$PYSETUP_TEST_EXTRAS" != '1' ]]; then - pip install -e .[mwoauth]; - fi - -script: - - mkdir ~/.pywikibot - - - python pwb.py generate_family_file 'https://wiki.musicbrainz.org/' musicbrainz 'n' - - if [[ $FAMILY == 'wpbeta' ]]; then - python -m generate_family_file 'http://%27$LANGUAGE%27.wikipedia.beta.wmflabs.org/' 'wpbeta' 'y' ; - fi - - if [[ $FAMILY == 'wsbeta' ]]; then - python -m generate_family_file 'http://%27$LANGUAGE%27.wikisource.beta.wmflabs.org/' 'wsbeta' 'y' ; - fi - - if [[ $FAMILY == 'portalwiki' ]]; then - python -m generate_family_file 'https://theportalwiki.com/wiki/Main_Page' 'portalwiki' 'y' 'y'; - fi - - - python -W error::UserWarning -m pwb generate_user_files -dir:~/.pywikibot/ -family:$FAMILY -lang:$LANGUAGE -v -user:"$PYWIKIBOT_USERNAME" - - - if [[ -n "$USER_PASSWORD" && -n "$PYWIKIBOT_USERNAME" ]]; then - printf "usernames['wikipedia']['en'] = '%q'\n" "$PYWIKIBOT_USERNAME" >> ~/.pywikibot/user-config.py ; - printf "usernames['wikipedia']['test'] = '%q'\n" "$PYWIKIBOT_USERNAME" >> ~/.pywikibot/user-config.py ; - printf "usernames['wikidata']['test'] = '%q'\n" "$PYWIKIBOT_USERNAME" >> ~/.pywikibot/user-config.py ; - printf "usernames['commons']['commons'] = '%q'\n" "$PYWIKIBOT_USERNAME" >> ~/.pywikibot/user-config.py ; - printf "usernames['meta']['meta'] = '%q'\n" "$PYWIKIBOT_USERNAME" >> ~/.pywikibot/user-config.py ; - printf "usernames['wikisource']['zh'] = '%q'\n" "$PYWIKIBOT_USERNAME" >> ~/.pywikibot/user-config.py ; - printf "('%q', '%q')\n" "$PYWIKIBOT_USERNAME" "$USER_PASSWORD" > ~/.pywikibot/passwordfile ; - echo "import os" >> ~/.pywikibot/user-config.py ; - echo "password_file = os.path.expanduser('~/.pywikibot/passwordfile')" >> ~/.pywikibot/user-config.py ; - fi - - - if [[ -n "$OAUTH_DOMAIN" ]]; then - if [[ -n "$OAUTH_PYWIKIBOT_USERNAME" ]]; then - printf "usernames['${FAMILY}']['${LANGUAGE}'] = '%q'\n" "$OAUTH_PYWIKIBOT_USERNAME" >> ~/.pywikibot/user-config.py ; - fi ; - oauth_token_var="OAUTH_TOKENS_${FAMILY^^}_${LANGUAGE^^}" ; - if [[ -n "${!oauth_token_var}" ]]; then - printf "authenticate['${OAUTH_DOMAIN}'] = ('%s')\n" "${!oauth_token_var//:/', '}" >> ~/.pywikibot/user-config.py ; - fi ; - fi - - echo "authenticate['wiki.musicbrainz.org'] = ('NOTSPAM', 'NOTSPAM')" >> ~/.pywikibot/user-config.py ; - - - echo "max_retries = 3" >> ~/.pywikibot/user-config.py - - echo "maximum_GET_length = 5000" >> ~/.pywikibot/user-config.py - - echo "console_encoding = 'utf8'" >> ~/.pywikibot/user-config.py - - - python -c "import setuptools; print(setuptools.__version__)" - - - if [[ "$USE_PYTEST" == "1" ]]; then - if [[ "$PYWIKIBOT_SITE_ONLY" == "1" ]]; then - python setup.py pytest --addopts="-vvv -s --timeout=$TEST_TIMEOUT --cov=. -rsxX -a "family=='$FAMILY' and code=='$LANGUAGE'"" ; - else - python setup.py pytest --addopts="-vvv -s --timeout=$TEST_TIMEOUT --cov=. -rsxX" ; - fi - else - coverage run -m unittest discover -vv -p "*_tests.py" ; - fi - -after_script: - codecov - -env: - global: - - TEST_TIMEOUT=300 - - PYWIKIBOT_TESTS_RUNNING=1 - - matrix: - - LANGUAGE=en FAMILY=wikipedia PYWIKIBOT_TEST_PROD_ONLY=1 - - LANGUAGE=zh FAMILY=wikisource PYSETUP_TEST_EXTRAS=1 PYWIKIBOT_TEST_PROD_ONLY=1 PYWIKIBOT_TEST_NO_RC=1 - -# use Partner Queue Solution for Python > 3.5 to not consume credits -matrix: - include: - - python: '3.5_with_system_site_packages' - env: LANGUAGE=nb FAMILY=wikipedia PYSETUP_TEST_EXTRAS=1 PYWIKIBOT_TEST_NO_RC=1 - addons: - apt: - packages: - - djvulibre-bin - - graphviz - arch: amd64 - - python: '3.6' - env: LANGUAGE=en FAMILY=wpbeta PYWIKIBOT_SITE_ONLY=1 OAUTH_DOMAIN="en.wikipedia.beta.wmflabs.org" - - python: '3.6' - env: LANGUAGE=zh FAMILY=wpbeta PYWIKIBOT_SITE_ONLY=1 OAUTH_DOMAIN="zh.wikipedia.beta.wmflabs.org" - - python: '3.5' - env: LANGUAGE=en FAMILY=wsbeta PYWIKIBOT_SITE_ONLY=1 - arch: amd64 - - python: '3.5' - env: LANGUAGE=en FAMILY=musicbrainz PYWIKIBOT_SITE_ONLY=1 - arch: amd64 - - python: '3.7' - env: LANGUAGE=test FAMILY=wikipedia PYWIKIBOT_SITE_ONLY=1 OAUTH_DOMAIN="test.wikipedia.org" - - python: '3.7' - env: LANGUAGE=test FAMILY=wikidata PYWIKIBOT_SITE_ONLY=1 - - python: '3.9' - env: LANGUAGE=ar FAMILY=wiktionary PYWIKIBOT_TEST_NO_RC=1 - - python: '3.6' - env: LANGUAGE=wikidata FAMILY=wikidata PYWIKIBOT_SITE_ONLY=1 - - python: '3.8' - env: LANGUAGE=uk FAMILY=wowwiki PYWIKIBOT_TEST_NO_RC=1 - - python: '3.8' - env: LANGUAGE=en FAMILY=portalwiki - - python: '3.5' - env: LANGUAGE=en FAMILY=wikipedia PYWIKIBOT_TEST_PROD_ONLY=1 - arch: amd64 - - python: '3.5' - env: LANGUAGE=zh FAMILY=wikisource PYSETUP_TEST_EXTRAS=1 PYWIKIBOT_TEST_PROD_ONLY=1 PYWIKIBOT_TEST_NO_RC=1 - arch: amd64 - allow_failures: - - python: '3.6' - env: LANGUAGE=en FAMILY=wpbeta PYWIKIBOT_SITE_ONLY=1 OAUTH_DOMAIN="en.wikipedia.beta.wmflabs.org" - - python: '3.8' - env: LANGUAGE=uk FAMILY=wowwiki PYWIKIBOT_TEST_NO_RC=1 - - python: '3.5' - env: LANGUAGE=en FAMILY=wsbeta PYWIKIBOT_SITE_ONLY=1 - arch: amd64 - -notifications: - email: - recipients: - - pywikibot-commits@lists.wikimedia.org - on_success: always - on_failure: always - irc: - channels: - - "libera.chat#pywikibot" - on_success: change - on_failure: change - template: - - "%{repository_slug}#%{build_number} (%{branch} - %{commit} : %{author}): %{message} %{build_url}" diff --git a/tests/README.rst b/tests/README.rst index 0da404d..6267c07 100644 --- a/tests/README.rst +++ b/tests/README.rst @@ -92,54 +92,6 @@ PYWIKIBOT_TEST_MODULES=api,site python -m unittest -v
-Travis CI -========= - -After changes are published into a GitHub repository, tests may be run on -travis-ci.com according to the configuration in .travis.yml . - -When changes are merged into the main repository, they are replicated to -https://github.com/wikimedia/pywikibot , and Travis tests are run and -published at https://app.travis-ci.com/github/wikimedia/pywikibot/builds . These tests -use the Wikimedia global (SUL) account 'Pywikibot-test', which has a password -securely stored in .travis.yml file. See section env:global:secure. - -Anyone can run these tests on travis-ci.com using their own GitHub account, with -code changes that have not been merged into the main repository. To do this: - -1. create a GitHub and travis-ci account -2. fork the main GitHub repository https://github.com/wikimedia/pywikibot -3. enable builds from the Travis profile page: https://travis-ci.com/profile -4. push changes into the forked git repository -5. watch the build at https://travis-ci.com/<username>/pywikibot/builds - -Only travis-ci builds from the main repository can access the password for the -Wikimedia account 'Pywikibot-test'. All tests which require a logged in user -are skipped if the travis-ci build environment does not have a password. - -To enable 'user' tests on travis-ci builds for a different repository, add -a username and password to Travis: - -1. Go to https://travis-ci.com/<username>/pywikibot/settings -2. Add a new variable named PYWIKIBOT_USERNAME and a value of a valid - Wikimedia SUL username -3. Add another variable named USER_PASSWORD, with the private password for - the Wikimedia SUL username used in step 2. Check that this - environment variable has "Display value in build logs" set to OFF, so - the password does not leak into the build logs. -4. The next build should run tests that require a logged in user - -If the username does not exist on one of the Travis build sites, user tests -will not be run on that build site. - -While passwords in travis-ci environment variables are not leaked in normal -operations, you are responsible for your own passwords. If the variables contain -single quotes it is necessary to surround them in double quotes (see also -`travis-ci #4350 https://github.com/travis-ci/travis-ci/issues/4350`_). - -It is strongly recommended that an untrusted bot account is created for -Travis tests, using a password that is not shared with trusted accounts. - AppVeyor CI ===========