小编Ank*_*kit的帖子

受保护分支设置中的检查列表中缺少 Github 操作状态检查

我有以下 github 操作设置,可以在创建 Pull 请求时正常触发。但它不会出现在受保护分支(主分支)的状态检查列表中。我不确定我做错了什么。


name: Python application

on:
  pull_request:
    branches: [ main ]

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v1
    - name: Set up Python 3.7
      uses: actions/setup-python@v1
      with:
        python-version: 3.7
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
    - name: Lint with flake8
      run: |
        pip install flake8
        # stop the build if there are Python syntax errors or undefined names
        flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
        # exit-zero treats all errors as …
Run Code Online (Sandbox Code Playgroud)

github github-actions

56
推荐指数
1
解决办法
2万
查看次数

如何mock.patch在另一个模块中导入的类

我有一个带有这样一个模块的python类:

xy.py

from a.b import ClassA

class ClassB:
  def method_1():
    a = ClassA()
    a.method2()
Run Code Online (Sandbox Code Playgroud)

然后我将ClassA定义为:

b.py

from c import ClassC

class ClassA:
  def method2():
      c = ClassC()
      c.method3()
Run Code Online (Sandbox Code Playgroud)

现在在这段代码中,当为xy.py编写测试时我想要mock.patch ClassC,有没有办法在python中实现呢?

显然我试过了:

mock.patch('a.b.ClassA.ClassC)
Run Code Online (Sandbox Code Playgroud)

mock.patch('a.b.c.ClassC')
Run Code Online (Sandbox Code Playgroud)

这些都没有奏效.

python unit-testing

23
推荐指数
2
解决办法
1万
查看次数

Flask-Session扩展与默认会话

我正在使用:

from flask import session

@app.route('/')
def main_page():
    if session.get('key'):
        print ("session exist" + session.get('key'))
    else:
        print ("could not find session")
        session['key'] = '34544646###########'
    return render_template('index.html')
Run Code Online (Sandbox Code Playgroud)

我没有安装Flask-Session扩展,但这仍然可以正常工作.我试图理解为什么以及何时扩展对我不利.据我所知,默认会话适合我.

python flask

23
推荐指数
3
解决办法
4339
查看次数

celery,flask sqlalchemy:DatabaseError:(DatabaseError)SSL错误:解密失败或错误记录mac

嗨,我有一个设置,我正在使用Celery Flask SqlAlchemy,我间歇性地收到此错误:

 (psycopg2.DatabaseError) SSL error: decryption failed or bad record mac
Run Code Online (Sandbox Code Playgroud)

我关注这篇文章:

Celery + SQLAlchemy:DatabaseError:(DatabaseError)SSL错误:解密失败或错误记录mac

还有一些,并添加了prerun和postrun方法:

@task_postrun.connect
def close_session(*args, **kwargs):
    # Flask SQLAlchemy will automatically create new sessions for you from 
    # a scoped session factory, given that we are maintaining the same app
    # context, this ensures tasks have a fresh session (e.g. session errors 
    # won't propagate across tasks)
    d.session.remove()

@task_prerun.connect
def on_task_init(*args, **kwargs):
    d.engine.dispose()
Run Code Online (Sandbox Code Playgroud)

但我仍然看到这个错误.有人解决了吗?

请注意,我在AWS上运行它(两个服务器访问相同的数据库).数据库本身托管在自己的服务器(而不是RDS)上.我相信总的芹菜背景任务是6(2 + 4).Flask前端使用gunicorn运行.

我的相关主题:https: //github.com/celery/celery/issues/3238#issuecomment-225975220

sqlalchemy celery python-2.7 flask-sqlalchemy

14
推荐指数
1
解决办法
1031
查看次数

获取编译ReactiveCocoa的错误

我只是pod为这个新项目安装了这个Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '7.0'

def import_pods
    pod 'Mantle'
    pod 'LBBlurredImage'
    pod 'TSMessages'
    pod 'ReactiveCocoa'
end

target 'WeatherJoy2' do
    import_pods
    link_with 'WeatherJoy2'
end
Run Code Online (Sandbox Code Playgroud)

pod安装成功但现在在构建项目时遇到以下错误:

/Users/ankit/Documents/WeatherJoy2/Pods/ReactiveCocoa/ReactiveCocoa/NSObject+RACKVOWrapper.m:49:3: Unknown type name 'rac_propertyAttributes'; did you mean 'mtl_propertyAttributes'?
/Users/ankit/Documents/WeatherJoy2/Pods/ReactiveCocoa/ReactiveCocoa/NSObject+RACKVOWrapper.m:49:40: Implicit declaration of function 'rac_copyPropertyAttributes' is invalid in C99

/Users/ankit/Documents/WeatherJoy2/Pods/ReactiveCocoa/ReactiveCocoa/NSObject+RACKVOWrapper.m:49:27: Incompatible integer to pointer conversion initializing 'mtl_propertyAttributes *' with an expression of type 'int'
Run Code Online (Sandbox Code Playgroud)

项目中没有别的东西,这是一个新项目.我在xcode 6.2和OSX 10.9.5上

objective-c ios cocoapods reactive-cocoa

8
推荐指数
1
解决办法
862
查看次数

如何在使用XmlHttpRequest和FormData时设置边界

我正在尝试在标头中正确设置边界,同时使用FormData发布XmlHttpRequest:

xhr.open("POST",url);
xhr.setRequestHeader("Content-type","multipart/form-data; boundary=...");

var formData = new FormData();
formData.append("filename", inputId.files[0]);
formData.append(...);

xhr.send(formData);
Run Code Online (Sandbox Code Playgroud)

如何在此处获取请求标头中设置的边界.我看到请求被设置,边界以某种方式在请求中创建.但服务器不知道如何解释它.

javascript forms ajax

7
推荐指数
1
解决办法
1万
查看次数

如何使用 Ansible 在服务器上安装 Python 版本

我正在使用 ansible 来连接服务器。但由于旧版本的 python,某些 pip 包出现错误。如何2.7.10使用 ansible 安装特定版本的 python ( )。服务器上当前的 python 版本是2.7.6

现在我已经手动编译并安装了 python 版本,但更希望有一种方法可以通过 ansible 来完成它。

python ansible ubuntu-14.04

6
推荐指数
2
解决办法
1万
查看次数

Flask SqlAlchemy 开始和结束事务

我正在使用 sqlalchemy 扩展在烧瓶中编写一个 SqlAlchemy 事务:

flask.ext.sqlalchemy
Run Code Online (Sandbox Code Playgroud)

我的代码如下所示:

def charge_user(user):
  db.session.begin()
  try:
    transaction = create_transaction()
    if not transaction:
      // cancel the session
      return False

    db.session.add(transaction)
    user.paid = True
    db.session.add(user)
    return True
  except Exception:
    db.session.rollback()
    return False
Run Code Online (Sandbox Code Playgroud)

只是一个简单的问题,sqlalchemy 扩展与flask-sqlalchemy 插件的文档非常混乱。在flask-sqlalchemy 扩展的情况下,如何取消会话/事务。

python flask-sqlalchemy

5
推荐指数
1
解决办法
7140
查看次数

Ansible git模块rev-parse

嗨,我想执行以下任务来在本地提取最新的提交ID:

  - name: get latest git commit id
    local_action: "command git rev-parse HEAD"
    register: git_commit_id
Run Code Online (Sandbox Code Playgroud)

但是我正在使用收到警告command。因为这git是一个ansible核心模块:http : //docs.ansible.com/ansible/git_module.html

如何使用git模块执行此操作?

git ansible ansible-playbook

5
推荐指数
1
解决办法
419
查看次数

在Google Compute上设置外部authorized_keys

我正在从AWS迁移,我正在使用ansible进行部署到Google Cloud计算实例.我正在尝试使用授权密钥在盒子上设置一些用户.这曾经适用于AWS,但似乎用户管理与Google Compute略有不同.这就是我正在做的事情.

在本地创建了一个ssh-key.将此密钥(公共)放在ansible文件中,并将其复制到创建的新用户(使用ansible)中/home/deploy/.ssh/authorized_keys

我仍然无法使用本地方框中的此密钥登录.

$ ssh -i ~/.ssh/deploy_rsa deploy@<host>
Run Code Online (Sandbox Code Playgroud)

是否有允许登录该框的用户列表?我是否可以仅将用户配置为从云控制台登录到框?

编辑

$ ssh -i ~/.ssh/deploy_rsa deploy@<host>
... skipped some logs here ....
    Here's SSH logs from client side:
    debug1: SSH2_MSG_SERVICE_ACCEPT received
    debug2: key: /Users/ankit/.ssh/gcloud-rsa (0x7ff1d16105e0),
    debug2: key: /Users/ankit/.ssh/deploy_rsa (0x0), explicit
    debug1: Authentications that can continue: publickey
    debug3: start over, passed a different list publickey
    debug3: preferred publickey,keyboard-interactive,password
    debug3: authmethod_lookup publickey
    debug3: remaining preferred: keyboard-interactive,password
    debug3: authmethod_is_enabled publickey
    debug1: Next authentication method: publickey
    debug1: Offering RSA public key: /Users/ankit/.ssh/gcloud-rsa …
Run Code Online (Sandbox Code Playgroud)

ssh google-compute-engine google-cloud-platform

5
推荐指数
1
解决办法
1034
查看次数