+1 to separating integration tests from "build". It should be able to
succeed without internet access (if deps are cached).

On Tue, Mar 26, 2019 at 3:18 PM Michael Luckey <adude3...@gmail.com> wrote:

> Of course, we could implement something here. But I am worried about the
> consequences. As gogradle writes into (user) global state this would have
> unexpected side effects.
>
> Consider a developer running Project A - which happens to also use
> gogradle - and during build of that project issues an innocent beam clean.
> Would be no fun to track all that failures arising out of those now deleted
> state.
>
> Unfortunately, I do not have a clear understanding yet, what's going on
> here, why that cache is put there and how it gets inconsistent. Need to
> look into that. (But might be obsoleted anyway by Roberts plans to drop
> gogradle for something different.)
>
> On Tue, Mar 26, 2019 at 7:28 PM Thomas Weise <t...@apache.org> wrote:
>
>> Can this be addressed by having "clean" remove all state that gogradle
>> leaves behind? This staleness issue has bitten me a few times also and it
>> would be good to have a reliable way to deal with it, even if it involves
>> an extra clean.
>>
>>
>> On Tue, Mar 26, 2019 at 11:14 AM Michael Luckey <adude3...@gmail.com>
>> wrote:
>>
>>> @Udi
>>> Did you try to just delete the
>>> '/usr/local/google/home/ehudm/.gradle/go/repo/cloud.google.com' folder?
>>>
>>> @Robert
>>> As said before, I am a bit scared about the implications. Shelling out
>>> is done by python, and from build perspective, this does not work very
>>> well, unfortunately. I.e. no caching, up-to-date checks etc...
>>>
>>> But of course, we need to play with this a bit more.
>>>
>>> On Tue, Mar 26, 2019 at 6:24 PM Robert Burke <rob...@frantil.com> wrote:
>>>
>>>> Reading the error from the gradle scan, it largely looks like some part
>>>> of the GCP dependencies for the build depends on a package, where the
>>>> commit version is no longer around. The main issue with gogradle is that
>>>> it's entirely distinct from the usual Go workflow, which means deps users
>>>> use are likely to be different to what's in the lock file.
>>>>
>>>> This work will be tracked in
>>>> https://issues.apache.org/jira/browse/BEAM-5379
>>>> GoGradle hasn't moved to support the new-go way of handling deps, so my
>>>> inclination is to simplify to simple scripts for Gradle that shell out the
>>>> to Go tool for handling Go dep management, over trying to fix GoGradle.
>>>>
>>>> On Tue, 26 Mar 2019 at 09:43, Udi Meiri <eh...@google.com> wrote:
>>>>
>>>>> Robert, from what I recall it's not flaky for me - it consistently
>>>>> fails. Let me know if there's a way to get more logging about this error.
>>>>>
>>>>> On Mon, Mar 25, 2019, 19:50 Robert Burke <rob...@frantil.com> wrote:
>>>>>
>>>>>> It's concerning to me that 1) the Go dependency resolution via
>>>>>> gogradle is flaky, and 2) that it can block other languages.
>>>>>>
>>>>>> I suppose 2) makes sense since it's part of the container
>>>>>> bootstrapping code, but that makes 1) a serious problem, of which I 
>>>>>> wasn't
>>>>>> aware.
>>>>>> I should have time to investigate this in the next two weeks.
>>>>>>
>>>>>> On Mon, 25 Mar 2019 at 18:08, Michael Luckey <adude3...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Just for the record,
>>>>>>>
>>>>>>> using a vm here, because did not yet get all task running on my mac,
>>>>>>> and did not want to mess with my setup.
>>>>>>>
>>>>>>> So installed vanilla ubuntu-18.04 LTS on virtual box, 26GB ram, 6
>>>>>>> cores and further
>>>>>>>
>>>>>>> sudo apt update
>>>>>>>
>>>>>>> sudo apt install gcc
>>>>>>>
>>>>>>> sudo apt install make
>>>>>>>
>>>>>>> sudo apt install perl
>>>>>>>
>>>>>>> sudo apt install curl
>>>>>>>
>>>>>>> sudo apt install openjdk-8-jdk
>>>>>>>
>>>>>>> sudo apt install python
>>>>>>>
>>>>>>> sudo apt install -y software-properties-common
>>>>>>>
>>>>>>> sudo add-apt-repository ppa:deadsnakes/ppa
>>>>>>>
>>>>>>> sudo apt update
>>>>>>>
>>>>>>> sudo apt install python3.5
>>>>>>>
>>>>>>> sudo apt-get install apt-transport-https ca-certificates curl
>>>>>>> gnupg-agent software-properties-common
>>>>>>>
>>>>>>> curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo
>>>>>>> apt-key add -
>>>>>>>
>>>>>>> sudo apt-key fingerprint 0EBFCD88
>>>>>>>
>>>>>>> sudo add-apt-repository "deb [arch=amd64]
>>>>>>> https://download.docker.com/linux/ubuntu \
>>>>>>>
>>>>>>> $(lsb_release -cs) \
>>>>>>>
>>>>>>> stable"
>>>>>>>
>>>>>>> sudo apt-get update
>>>>>>>
>>>>>>> sudo apt-get install docker-ce docker-ce-cli containerd.io
>>>>>>>
>>>>>>> sudo groupadd docker
>>>>>>>
>>>>>>> sudo usermod -aG docker $USER
>>>>>>>
>>>>>>> git config --global user.email "d...@spam.me"
>>>>>>>
>>>>>>> git config --global user.name "Some Guy"
>>>>>>>
>>>>>>> curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
>>>>>>>
>>>>>>> sudo python get-pip.py
>>>>>>>
>>>>>>> rm get-pip.py
>>>>>>>
>>>>>>> sudo pip install --upgrade virtualenv
>>>>>>>
>>>>>>> sudo pip install cython
>>>>>>>
>>>>>>> sudo apt-get install python-dev
>>>>>>>
>>>>>>> sudo apt-get install python3-distutils
>>>>>>>
>>>>>>> sudo apt-get install python3-dev # for python3.x installs
>>>>>>>
>>>>>>>
>>>>>>> git clone https://github.com/apache/beam.git cd beam/ ./gradlew
>>>>>>> build
>>>>>>>
>>>>>>> Nothing else changed/added. (hopefully, need to reassure myself here)
>>>>>>>
>>>>>>> Unfortunately, this is failing. Need to exclude those python tests
>>>>>>> (and of course website, which usually fails on lira links)
>>>>>>>
>>>>>>> So I might be missing some env settings for gap, dunno. Probably
>>>>>>> missed some docs.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Tue, Mar 26, 2019 at 1:46 AM Michael Luckey <adude3...@gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Thanks Udi for trying that!
>>>>>>>>
>>>>>>>> In fact, the go dependency resolution is flaky. Did not look into
>>>>>>>> that, but just rerunning usually works. Of course, less than optimal, 
>>>>>>>> but,
>>>>>>>> well...
>>>>>>>>
>>>>>>>> Running build target is of course just an aggregation of task to
>>>>>>>> run. And unfortunately just running that
>>>>>>>>
>>>>>>>> ./gradlew  :beam-sdks-python:testPy2Gcp
>>>>>>>>
>>>>>>>> stalls on my (virtual) machine.
>>>>>>>>
>>>>>>>> On Tue, Mar 26, 2019 at 1:35 AM Udi Meiri <eh...@google.com> wrote:
>>>>>>>>
>>>>>>>>> Okay, `./gradlew build` failed pretty quickly for me:
>>>>>>>>>
>>>>>>>>> > Task :beam-sdks-go:resolveBuildDependencies FAILED
>>>>>>>>> cloud.google.com/go:
>>>>>>>>> commit='4f6c921ec566a33844f4e7879b31cd8575a6982d', urls=[
>>>>>>>>> https://code.googlesource.com/gocloud] does not exist in
>>>>>>>>> /usr/local/google/home/ehudm/.gradle/go/repo/
>>>>>>>>> cloud.google.com/go/625660c387d9403fde4d73cacaf2d2ac, updating
>>>>>>>>> will be performed.
>>>>>>>>>
>>>>>>>>> https://gradle.com/s/x5zqbc5zwd3bg
>>>>>>>>>
>>>>>>>>> (Now I remember why I stopped using `build` :/)
>>>>>>>>>
>>>>>>>>> On Mon, Mar 25, 2019 at 5:30 PM Udi Meiri <eh...@google.com>
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> It shouldn't stall. That's a bug.
>>>>>>>>>> OTOH, I never use the `build` target.
>>>>>>>>>> I'll try running that myself.
>>>>>>>>>>
>>>>>>>>>> On Mon, Mar 25, 2019, 07:24 Michael Luckey <adude3...@gmail.com>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> trying to run './gradlew build' on vanilla setup, my build
>>>>>>>>>>> consistently stalls during execution of python gcp tests, e.g. on 
>>>>>>>>>>> both of
>>>>>>>>>>> - > :beam-sdks-python:testPy2Gcp
>>>>>>>>>>> - > :beam-sdks-python-test-suites-tox-py35:testPy35Gcp
>>>>>>>>>>>
>>>>>>>>>>> Console output:
>>>>>>>>>>> #### snip ####
>>>>>>>>>>> test_big_query_standard_sql
>>>>>>>>>>> (apache_beam.io.gcp.big_query_query_to_table_it_test.BigQueryQueryToTableIT)
>>>>>>>>>>> ... SKIP: IT is skipped because --test-pipeline-options is not 
>>>>>>>>>>> specified
>>>>>>>>>>> test_big_query_standard_sql_kms_key
>>>>>>>>>>> (apache_beam.io.gcp.big_query_query_to_table_it_test.BigQueryQueryToTableIT)
>>>>>>>>>>> ... SKIP: This test requires BQ Dataflow native source support for 
>>>>>>>>>>> KMS,
>>>>>>>>>>> which is not available yet.
>>>>>>>>>>> test_multiple_destinations_transform
>>>>>>>>>>> (apache_beam.io.gcp.bigquery_file_loads_test.BigQueryFileLoadsIT) 
>>>>>>>>>>> ... SKIP:
>>>>>>>>>>> IT is skipped because --test-pipeline-options is not specified
>>>>>>>>>>> test_one_job_fails_all_jobs_fail
>>>>>>>>>>> (apache_beam.io.gcp.bigquery_file_loads_test.BigQueryFileLoadsIT) 
>>>>>>>>>>> ... SKIP:
>>>>>>>>>>> IT is skipped because --test-pipeline-options is not specified
>>>>>>>>>>> test_records_traverse_transform_with_mocks
>>>>>>>>>>> (apache_beam.io.gcp.bigquery_file_loads_test.TestBigQueryFileLoads) 
>>>>>>>>>>> ...
>>>>>>>>>>>
>>>>>>>>>>> output ends here, would expect a failed or ok here.
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Afterwards no progress - even waiting for hours. Any idea, what
>>>>>>>>>>> might be causing this? Do I need to add some GCP properties for 
>>>>>>>>>>> this task ?
>>>>>>>>>>>
>>>>>>>>>>> Any ideas, what I am doing wrong?
>>>>>>>>>>>
>>>>>>>>>>> best,
>>>>>>>>>>>
>>>>>>>>>>> michel
>>>>>>>>>>>
>>>>>>>>>>>

Reply via email to