{"action":"closed","issue":{"url":"https://api.github.com/repos/getredash/redash/issues/2364","repository_url":"https://api.github.com/repos/getredash/redash","labels_url":"https://api.github.com/repos/getredash/redash/issues/2364/labels{/name}","comments_url":"https://api.github.com/repos/getredash/redash/issues/2364/comments","events_url":"https://api.github.com/repos/getredash/redash/issues/2364/events","html_url":"https://github.com/getredash/redash/issues/2364","id":301854467,"number":2364,"title":"Beta Image code for Dockerhub","user":{"login":"myoung34","id":879922,"avatar_url":"https://avatars1.githubusercontent.com/u/879922?v=4","gravatar_id":"","url":"https://api.github.com/users/myoung34","html_url":"https://github.com/myoung34","followers_url":"https://api.github.com/users/myoung34/followers","following_url":"https://api.github.com/users/myoung34/following{/other_user}","gists_url":"https://api.github.com/users/myoung34/gists{/gist_id}","starred_url":"https://api.github.com/users/myoung34/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/myoung34/subscriptions","organizations_url":"https://api.github.com/users/myoung34/orgs","repos_url":"https://api.github.com/users/myoung34/repos","events_url":"https://api.github.com/users/myoung34/events{/privacy}","received_events_url":"https://api.github.com/users/myoung34/received_events","type":"User","site_admin":false},"labels":[{"id":63020178,"url":"https://api.github.com/repos/getredash/redash/labels/question","name":"question","color":"cc317c","default":true}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-03-02T18:04:56Z","updated_at":"2018-03-18T08:38:04Z","closed_at":"2018-03-18T08:38:04Z","author_association":"NONE","body":"### Issue Summary\r\n\r\nTrying to test v4 beta images (from v3) in dockerhub result in errors.\r\nCant find code to diagnose upgrade from v3 to v4\r\n\r\nThere are redash images from as recent as 2 days ago, however the `v4.0.0-beta` branch is outdated, and the release page is outdated as well\r\n\r\n### Steps to Reproduce\r\n\r\n`bin upgrade fails`: \r\n\r\n```\r\nroot@b8191f03ed19:/app# bin/upgrade --channel beta                                                                \r\nStarting Redash upgrade:                                                                                   \r\nFound version: 4.0.0-beta                                                                                  \r\nCurrent version: current                                                                                             \r\nTraceback (most recent call last):                                                                                          \r\n  File \"bin/upgrade\", line 242, in <module>                                                      \r\n    deploy_release(args.channel)                                                                                        \r\n  File \"bin/upgrade\", line 220, in deploy_release                                                                               \r\n    verify_minimum_version()                                                                              \r\n  File \"bin/upgrade\", line 190, in verify_minimum_version                           \r\n    if semver.compare(current_version(), '0.12.0') < 0:                                                              \r\n  File \"/usr/local/lib/python2.7/dist-packages/semver.py\", line 54, in compare                                              \r\n    v1, v2 = parse(ver1), parse(ver2)                                                                     \r\n  File \"/usr/local/lib/python2.7/dist-packages/semver.py\", line 21, in parse                       \r\n    raise ValueError('%s is not valid SemVer string' % version)                                                                                                                \r\nValueError: current is not valid SemVer string      \r\n```\r\n\r\nGenerating a migration and running it fails:\r\n\r\n```\r\nroot@b8191f03ed19:/app# gosu redash python manage.py db migrate\r\n[2018-03-02 18:02:11,616][PID:1077][INFO][root] Generating grammar tables from /usr/lib/python2.7/lib2to3/Grammar.txt\r\n[2018-03-02 18:02:11,639][PID:1077][INFO][root] Generating grammar tables from /usr/lib/python2.7/lib2to3/PatternGrammar.txt\r\n[2018-03-02 18:02:13,221][PID:1077][INFO][alembic.runtime.migration] Context impl PostgresqlImpl.\r\n[2018-03-02 18:02:13,222][PID:1077][INFO][alembic.runtime.migration] Will assume transactional DDL.\r\n[2018-03-02 18:02:13,242][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'groups_id_seq' as owned by integer column 'groups(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,285][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'query_snippets_id_seq' as owned by integer column 'query_snippets(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,327][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'data_source_groups_id_seq' as owned by integer column 'data_source_groups(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,369][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'dashboards_id_seq' as owned by integer column 'dashboards(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,393][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'widgets_id_seq' as owned by integer column 'widgets(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,489][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'api_keys_id_seq' as owned by integer column 'api_keys(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,511][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'notification_destinations_id_seq' as owned by integer column 'notification_destinations(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,534][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'alert_subscriptions_id_seq' as owned by integer column 'alert_subscriptions(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,575][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'changes_id_seq' as owned by integer column 'changes(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,597][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'events_id_seq' as owned by integer column 'events(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,619][PID:1077][INFO][alembic.ddl.postgresql] Detected sequence named 'access_permissions_id_seq' as owned by integer column 'access_permissions(id)', assuming SERIAL and omitting\r\n[2018-03-02 18:02:13,663][PID:1077][INFO][alembic.autogenerate.compare] Detected added column 'queries.search_vector'\r\n[2018-03-02 18:02:13,670][PID:1077][INFO][alembic.autogenerate.compare] Detected added index 'ix_queries_search_vector' on '['search_vector']'\r\n[2018-03-02 18:02:13,682][PID:1077][INFO][alembic.autogenerate.compare] Detected added column 'users.profile_image_url'\r\n[2018-03-02 18:02:13,700][PID:1077][INFO][alembic.autogenerate.compare] Detected removed column 'widgets.type'\r\n[2018-03-02 18:02:13,700][PID:1077][INFO][alembic.autogenerate.compare] Detected removed column 'widgets.query_id'\r\n  Generating /app/migrations/versions/879aee43fba6_.py ... done\r\n```\r\n\r\n```\r\nroot@b8191f03ed19:/app# gosu redash python manage.py db upgrade\r\n[2018-03-02 18:02:18,139][PID:1113][INFO][root] Generating grammar tables from /usr/lib/python2.7/lib2to3/Grammar.txt\r\n[2018-03-02 18:02:18,162][PID:1113][INFO][root] Generating grammar tables from /usr/lib/python2.7/lib2to3/PatternGrammar.txt\r\n[2018-03-02 18:02:19,811][PID:1113][INFO][alembic.runtime.migration] Context impl PostgresqlImpl.\r\n[2018-03-02 18:02:19,812][PID:1113][INFO][alembic.runtime.migration] Will assume transactional DDL.\r\n[2018-03-02 18:02:19,839][PID:1113][INFO][alembic.runtime.migration] Running upgrade 969126bd800f -> 879aee43fba6, empty message\r\nTraceback (most recent call last):\r\n  File \"manage.py\", line 9, in <module>\r\n    manager()\r\n  File \"/usr/local/lib/python2.7/dist-packages/click/core.py\", line 716, in __call__\r\n    return self.main(*args, **kwargs)\r\n  File \"/usr/local/lib/python2.7/dist-packages/flask/cli.py\", line 345, in main\r\n    return AppGroup.main(self, *args, **kwargs)\r\n  File \"/usr/local/lib/python2.7/dist-packages/click/core.py\", line 696, in main\r\n    rv = self.invoke(ctx)\r\n  File \"/usr/local/lib/python2.7/dist-packages/click/core.py\", line 1060, in invoke\r\n    return _process_result(sub_ctx.command.invoke(sub_ctx))\r\n  File \"/usr/local/lib/python2.7/dist-packages/click/core.py\", line 1060, in invoke\r\n    return _process_result(sub_ctx.command.invoke(sub_ctx))\r\n  File \"/usr/local/lib/python2.7/dist-packages/click/core.py\", line 889, in invoke\r\n    return ctx.invoke(self.callback, **ctx.params)\r\n  File \"/usr/local/lib/python2.7/dist-packages/click/core.py\", line 534, in invoke\r\n    return callback(*args, **kwargs)\r\n  File \"/usr/local/lib/python2.7/dist-packages/click/decorators.py\", line 17, in new_func\r\n    return f(get_current_context(), *args, **kwargs)\r\n  File \"/usr/local/lib/python2.7/dist-packages/flask/cli.py\", line 229, in decorator\r\n    return __ctx.invoke(f, *args, **kwargs)\r\n  File \"/usr/local/lib/python2.7/dist-packages/click/core.py\", line 534, in invoke\r\n    return callback(*args, **kwargs)\r\n  File \"/usr/local/lib/python2.7/dist-packages/flask_migrate/cli.py\", line 132, in upgrade\r\n    _upgrade(directory, revision, sql, tag, x_arg)\r\n  File \"/usr/local/lib/python2.7/dist-packages/flask_migrate/__init__.py\", line 239, in upgrade\r\n    command.upgrade(config, revision, sql=sql, tag=tag)\r\n  File \"/usr/local/lib/python2.7/dist-packages/alembic/command.py\", line 254, in upgrade\r\n    script.run_env()\r\n  File \"/usr/local/lib/python2.7/dist-packages/alembic/script/base.py\", line 427, in run_env\r\n    util.load_python_file(self.dir, 'env.py')\r\n  File \"/usr/local/lib/python2.7/dist-packages/alembic/util/pyfiles.py\", line 81, in load_python_file\r\n    module = load_module_py(module_id, path)\r\n  File \"/usr/local/lib/python2.7/dist-packages/alembic/util/compat.py\", line 141, in load_module_py\r\n    mod = imp.load_source(module_id, path, fp)\r\n  File \"migrations/env.py\", line 87, in <module>\r\n    run_migrations_online()\r\n  File \"migrations/env.py\", line 80, in run_migrations_online\r\n    context.run_migrations()\r\n  File \"<string>\", line 8, in run_migrations\r\n  File \"/usr/local/lib/python2.7/dist-packages/alembic/runtime/environment.py\", line 836, in run_migrations\r\n    self.get_context().run_migrations(**kw)\r\n  File \"/usr/local/lib/python2.7/dist-packages/alembic/runtime/migration.py\", line 330, in run_migrations\r\n    step.migration_fn(**kw)\r\n  File \"/app/migrations/versions/879aee43fba6_.py\", line 21, in upgrade\r\n    op.add_column('queries', sa.Column('search_vector', sqlalchemy_utils.types.ts_vector.TSVectorType(), nullable=True))\r\nNameError: global name 'sqlalchemy_utils' is not defined\r\n```\r\n\r\n### Technical details:\r\n\r\n* 4.0.0-beta.b3765 installed via docker, upgrading from `:latest`\r\n"}}
{"actor":{"display_login":"arikfr"}}